/usr/bin/ld: не может найти-lemu

Я пытаюсь установить приложение. Во время компиляции это перестало работать со следующей ошибкой:

/usr/bin/ld: cannot find -lemu

Я установил libemu библиотеку, и она теперь в настоящее время находится в/opt/libemu/. Однако, когда я пытаюсь скомпилировать свое приложение, библиотека не найдена. Там какой-либо путь состоит в том, чтобы исправить это?


Править: Также похоже, что делание приводит к: также похоже, что make-файл компилирует со следующим:

gcc -pthread -shared -Wl,-O1 -Wl,-Bsymbolic-functions 
build/temp.linux-x86_64-2.6/libemu_module.o 
-L/opt/libemu/lib -lemu -o build/lib.linux-x86_64-2.6/libemu.so

Я попытался установить свой LD_LIBRARY_PATH на/opt/libemu, все еще не работает - перестал работать с упомянутой выше ошибкой.

1
задан Julio 4 June 2010 в 21:52
поделиться

2 ответа

Вам нужно сообщить компоновщику, где он находится:

gcc  stuff -L/opt/libemu -lemu

или:

gcc  stuff /opt/libemu/libemu.a

,где stuff — это обычные файлы параметров компиляции/компоновки и т. д.

Вы также можете указать пути к библиотеке в переменной среды LIBRARY_PATH:

LIBRARY_PATH=/opt/libemu
export LIBRARY_PATH

перед запуском сборки. Еще один вариант — посмотреть, где gcc ищет библиотеки, выполнив:

gcc --print-search-dirs

и поместить свою библиотеку в один из перечисленных каталогов.

Редактировать: Из вашей последней информации действительно неясно, что вы пытаетесь построить. Вы пытаетесь превратить статическую библиотеку в разделяемую библиотеку? Самое главное - Каково точное имя файла библиотеки, скопированного в каталог /opt/libemu?

2
ответ дан 3 September 2019 в 00:03
поделиться

Переменная окружения LD_LIBRARY_PATH должна включать (но, вероятно, по умолчанию не включает) /opt/libemu.

try running:

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/libemu
make install
0
ответ дан 3 September 2019 в 00:03
поделиться
Другие вопросы по тегам:

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