Как распространять бинарные программы, созданные на современной Ubuntu, чтобы их можно было запускать на любой старой системе Linux?

Я обнаружил, что если я собираю какой-либо двоичный файл на Ubuntu 10.10, то он не работает на некоторых старых Linux. Это потому, что Ubuntu использует очень новую библиотеку C, которая называется EGLIBC. Большинство настольных Linux-систем используют GLIBC.

Я хотел бы знать, существует ли какой-либо стандартный метод, как распространять двоичные программы, построенные на современной Ubuntu, чтобы их можно было запускать в любой старой системе Linux?

Как найти все необходимые зависимости (версия glibc, динамические библиотеки)?

3
задан 12 January 2011 в 17:07

1 ответ

Если вы настаиваете на этом, вы не можете использовать какие-либо общие библиотеки; Вы должны связать с -static.

Чтобы узнать, на что он ссылается из источника, посмотрите на команду линкера для ключей -lfoo. Чтобы проверить двоичный файл, запустите на нем ldd.

0
ответ дан 12 January 2011 в 17:07

Другие вопросы по тегам:

Похожие вопросы: