Назад | Перейти на главную страницу

Недостаточно установить LD_LIBRARY_PATH?

Я редактировал свой /etc/bashrc установить LD_LIBRARY_PATH как в мой предыдущий вопрос, который я задал. Однако, похоже, это не действует. Даже если echo $LD_LIBRARY_PATH показывает мои модификации. И запустил мою программу: LD_LIBRARY_PATH="/usr/local/lib" ./test.cgi ясность действительно работает. Нужно ли мне перезагружать систему? В чем дело?

Тебе надо export переменная.

export LD_LIBRARY_PATH="/usr/local/lib"
./test.cgi

Ваша формулировка LD_LIBRARY_PATH="/usr/local/lib" ./test.cgi устанавливает переменную в текущей оболочке. Если ты просто бежишь LD_LIBRARY_PATH=/usr/local/lib ; ./test.cgi вы установите его в текущей оболочке, но не в дочернем процессе ./test.cgi.

Из bash страница руководства:

export:
        The supplied names are marked for automatic export to the environment of subsequently executed commands. 

Попробуйте бежать ldconfig -v для восстановления кеша библиотеки.