Может ли C / C ++ собрать все динамические библиотеки в один файл bin?

Когда я работаю в разных ОС, я обнаруживаю, что программа, построенная на одной системе Linux, не может быть запущена на другой системе из-за другой версии libc.

Как я могу встроить все разделяемые библиотеки так же, как golang в c / c ++?

Включая libc и libcxx

1

Решение

Если вы хотите работать в нескольких системах Linux, все, что вам действительно нужно, это собрать с использованием самого старого glibc из любой из них. Самый простой способ — просто загрузить образ виртуальной машины из старой системы, такой как CentOS 5, и собрать ее там. Вам не нужно беспокоиться о статических ссылках, просто сборка со старой версией будет означать, что вы в основном совместимы с новыми версиями.

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]