我已经编辑了我的/etc/bashrc
设置LD_LIBRARY_PATH
如下我之前问过的问题。但是它似乎没有生效。尽管echo $LD_LIBRARY_PATH
确实显示了我的修改。并且运行我的程序:LD_LIBRARY_PATH="/usr/local/lib" ./test.cgi
明确地确实有效。我需要重新启动系统吗?发生了什么事?
答案1
您需要export
该变量。
export LD_LIBRARY_PATH="/usr/local/lib"
./test.cgi
您的公式LD_LIBRARY_PATH="/usr/local/lib" ./test.cgi
在当前 shell 中设置变量。如果您只是在运行,LD_LIBRARY_PATH=/usr/local/lib ; ./test.cgi
那么您将在当前 shell 中设置它,但不会在子进程 ./test.cgi 中设置它。
从bash
手册页中:
export:
The supplied names are marked for automatic export to the environment of subsequently executed commands.
答案2
尝试运行ldconfig -v
重建库缓存。