Когда я работаю в разных ОС, я обнаруживаю, что программа, построенная на одной системе Linux, не может быть запущена на другой системе из-за другой версии libc.
Как я могу встроить все разделяемые библиотеки так же, как golang в c / c ++?
Включая libc и libcxx
Если вы хотите работать в нескольких системах Linux, все, что вам действительно нужно, это собрать с использованием самого старого glibc из любой из них. Самый простой способ — просто загрузить образ виртуальной машины из старой системы, такой как CentOS 5, и собрать ее там. Вам не нужно беспокоиться о статических ссылках, просто сборка со старой версией будет означать, что вы в основном совместимы с новыми версиями.
Других решений пока нет …