歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> Ubuntu下的環境變量LD_LIBRARY_PATH

Ubuntu下的環境變量LD_LIBRARY_PATH

日期:2017/2/28 15:42:52   编辑:Linux教程

問題:

(1)在Ubuntu終端運行env,發現並沒有LD_LIBRARY_PATH這個環境變量

(2)新打開一個終端,輸入命令echo $LD_LIBRARY_PATH,結果為空白。通過export添加目錄後,在輸入echo命令,會出現剛剛添加的目錄。如下:

關閉該終端,打開一個新的終端,輸入echo $LD_LIBRARY_PATH命令,則顯示為空白。

(3)編輯~/.profile文件,添加內容:

if [ -d "$HOME/lib"] ; then

export LD_LIBRARY_PATH="/usr/local/netpbm/lib"

fi

當使用Ctrl+Alt+F1登錄進去tty1時,使用echo $LD_LIBRARY_PATH可以看到設置的環境變量。

但是在gnome終端,輸入echo命令,仍然為空白。環境變量設置沒有效果。

(4)通過sudo vi /etc/environment命令添加

LD_LIBRARY_PATH="/usr/local/netpbm/lib"

在終端輸入echo命令,顯示仍未空白。

通過sudo -i命令進入root用戶權限,輸入echo命令,可以看到設置的環境變量。

那麼,怎樣設置共享庫的路徑,使得系統能夠搜索到這些庫。主要以下幾種方法:

1)將共享庫放在目錄/lib或者/usr/lib下,並使用ldconfig使得添加即使生效

1)將動態庫目錄添加到文件/etc/ld.so.conf,並使用ldconfig使得添加即使生效

2)在文件~/.bashrc文件中加入

if [ -d "$HOME/lib"] ; then

export LD_LIBRARY_PATH="$HOME/lib"

fi

這樣設置的環境變量LD_LIBRARY_PATH只能在bash下使用。在其他shell下比如ksh,tcsh下不可以使用這些環境變量。

3)在~/.profile或者/etc/environment下編輯環境變量LD_LIBRARY_PATH

同時編輯/etc/X11/Xsession.options文件,將use-ssh-agent更改為no-use-ssh-agent

這樣設置的環境變量LD_LIBRARY_PATH可以通用

4)-R選項指定共享庫目錄

Copyright © Linux教程網 All Rights Reserved