Как принудительно изменить версию общей библиотеки, используемую моим кодом, из определенной папки, отличной от папки по умолчанию в /usr/local/lib/?

у меня есть приложение, которое я строю на Linux (Ubuntu). Шаги, Котор включили ./configure с определенными параметрами, make, а затем запустить приложение.

по умолчанию приложение ссылается / использует общую библиотеку, находящуюся в папке/usr/local/lib / libstarpu.Итак.0, но я загрузил последний источник для этого Starpu и установил его в своем доме $HOME/lib/.

Я попытался использовать эту новую библиотеку в качестве входных данных для команды configure, как показано ниже, и даже удалил /usr / local / lib из моего LD_LIBRARY_PATH, но все же, когда я проверяю ldd, кажется, что исполняемый файл собран со старой версией библиотеки в /usr/local/lib.

./configure LDFLAGS="-l:$HOME/lib/libstarpu.so.0"

как я могу заставить свою систему сборки использовать более новую версию этой общей библиотеки в другой папке, чем системное значение по умолчанию /usr/local / lib?

нужно ли мне что-либо изменить в файлах Makefile, связанных с сборкой, настроить файлы?

26
задан 3498DB
28.02.2023 15:15 Количество просмотров материала 2954
Распечатать страницу

1 ответ

попробуй:

LD_LIBRARY_PATH="$HOME/lib" ./configure

во всяком случае, проверьте переменные среды, объясненные здесь:

man ld.so
0
отвечен golimar 2023-03-01 23:03

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх