ошибка при загрузке разделяемых библиотек: libm.so.6: невозможно определить общий объект: ошибка 38


0

Я - нуб Linux, пытающийся скомпилировать 32-битную программу и запустить ее на 64-битной Ubuntu. Он хорошо компилируется, но когда я запускаю его, я получаю эту ошибку: ошибка при загрузке разделяемых библиотек: libm.so.6: невозможно определить общий объект: ошибка 38

Я искал libm.so.6 и нашел его в / lib32 и / libx32. Любая помощь приветствуется.


Как вы скомпилировали программу? что является результатом ldd prog(где progзаменяется именем скомпилированной исполняемой программы)?
Стальная машина

ldd cr2hdr дает «не динамический исполняемый файл»
Брайан Филлипс

Я попытался скомпилировать простую программу "Hello, world". Я использовал это для компиляции: gcc -m32 hello.c; Когда я запускаю ldd a.out, я получаю такой результат: «не динамический исполняемый файл». Если я уберу опцию "-m32", она будет работать. Я пытаюсь скомпилировать гораздо более сложную программу в 32-битный двоичный файл и свел проблему к самому простому примеру. Программа требует 32-разрядного двоичного файла.
Брайан Филлипс

На самом деле нужен двоичный файл hello.c - libc.so.6, но это в основном та же проблема.
Брайан Филлипс

gcc-multilibУстановлен ли пакет (и его зависимости)?
стальная отвертка

Ответы:


0

Я нашел причину, но не нашел решения. Причина в том, что среда, которую я использую, не имеет 32-битной поддержки в ядре. Среда является UserL и работает на Android. Разработчики подтвердили, что 32-битная поддержка отсутствует.

Спасибо всем за помощь.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.