2016-10-06 12 views
1

Я установил программу в Centos 6.8, во время запуска программы получаю ошибку «ошибка при загрузке разделяемых библиотек: libm.so. 6: невозможно открыть файл общего объекта: нет такого файла или каталога « , когда я проверил связанную библиотеку с программой с помощью команды ldd, я могу увидеть libm.so.6 с правильным 64-битным » libm.so.6 =>/lib64 /libm.so.6 (0x0000003a19000000) " Это значит, что библиотека установлена ​​и уже добавлена ​​в переменную окружения, LD_LIBRARY_PATH Другая программа, использующая libm.so.6, отлично работает. Может ли кто-нибудь помочь решить эту проблему? Thankslibm.so.6: не удается открыть файл общего объекта: нет такого файла или каталога

+0

Пожалуйста, покажите команду 'ldd', на которой вы фактически запустили, и ее выход. –

ответ

0

В программировании подробнее вопрос.

Позволяет сказать, Программа, которую я пытаюсь запустить, ABC и установить

Это не детали, это гипотетический. Если вы хотите полезно ответы, вы должны поставить актуальным данных, о которых вы просили. В частности, отредактируйте свой вопрос (вместо того, чтобы комментировать другой бесполезный ответ) и сделайте следующее: «покажите команду ldd, на которой вы фактически запустили, и ее фактический результат».

Тем не менее, если ldd /usr/local/ABC/bin/ABC действительно показать libm.so.6 => /lib64/libm.so.6, то нет никакого способа для ABC в не найти libm.so.6.

Поэтому мы должны заключить, что ABC вызывает некоторую другой программы и что программа не может найти libm.so.6. Вы можете подтвердить это предположение, выполнив команду:

LD_DEBUG=files,libs /usr/local/ABC/bin/ABC 

Это покажет, что ABC не найдет libm.so.6, что другие программы она вызывает, и где, что другая программа ищет libm.so.6.

Возможно, что другая программа 32-разрядная и ищет /lib/libm.so.6 и что у вас нет 32-битных библиотек времени исполнения.

Вы можете установить их с помощью yum install glibc.i686 или некоторых таких.