Почему LD_LIBRARY_PATH не имеет никакого эффекта?

./ a.out: ошибка при загрузке общих библиотек: libc ++. So.1: невозможно открыть файл общих объектов: такого файла или каталога нет:

, хотя:

$ echo $LD_LIBRARY_PATH
/home/exe/libcxx/lib:/home/exe/llvm/lib:/usr/local/lib
$ ls /usr/local/lib
libc++.so  libc++.so.1  libc++.so.1.0  python2.7  python3.2

Я даже скопировал его рядом с исполняемым файлом, но пока ничего не сделал.

Что я делаю не так?

3
задан 1 June 2013 в 20:43

2 ответа

Вам может потребоваться запустить sudo ldconfig /usr/local/lib для обновления кеша динамического компоновщика. В противном случае я думаю, что система не знает, какие библиотеки доступны из этого каталога. См. man ldconfig для получения дополнительной информации.

0
ответ дан 1 June 2013 в 20:43

Правильный ответ оказывается, что вы должны сделать export LD_LIBRARY_PATH = .. См. https://stackoverflow.com/questions/1158091/defining-a-variable-with-or-without-export

0
ответ дан 16 March 2020 в 02:33

Другие вопросы по тегам:

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