Я на самом деле борюсь с той же проблемой, так что, возможно, у меня есть какая-то информация, которая может помочь.
Короче говоря, ваш двоичный файл был скомпилирован для поиска libc.so.6. GLIBC_2.3.4 находится в libc.so.5. Насколько мне известно, если вы понизите версию glibc на своей машине разработчика, некоторые из ваших других программ могут работать некорректно (потому что они были скомпилированы для поиска текущей версии). Каким-то образом у CentOS / RHEL есть пакет compat-glibc, который может работать вместе с текущим glibc, не вызывая этой ошибки. Если ваш блок разработчика использует CentOS / RHEL, установите этот пакет / перекомпилируйте, и все будет в порядке. Возможно, вам придется использовать более старый компилятор, чтобы он мог искать старую библиотеку. Если вы не разрабатываете CentOS / RHEL, продолжайте.
Мой план атаки сегодня - собрать glibc из исходников. Это означает использование компилятора, выпущенного примерно в то же время, что и более старая версия glibc. Вы можете столкнуться с некоторыми препятствиями (такими как необходимость в более старой версии builddutils и т. Д.), Но я надеюсь, что когда libc.so.5 будет скомпилирован и установлен в / usr / local / lib, мое приложение обнаружит, что до него находит libc.so.6 в / lib.
Итак, вот оно. Это не для слабонервных, и это определенно не быстрое решение. Сегодня я планирую протестировать это, поэтому не могу сказать, что это правильное решение. Пожалуйста, коллективный разум ... если я категорически не прав, поправьте меня и спасите эту бедную душу от этой извилистой мучительной дороги :-)
РЕДАКТИРОВАТЬ: ссылка на источники glibc
person
Joe
schedule
08.04.2011