1.動(dòng)態(tài)庫(kù)路徑的設(shè)置
Linux下調(diào)用動(dòng)態(tài)庫(kù)和windows不一樣.linux 可執(zhí)行程序是靠配置文件去讀取路徑的,因此有些時(shí)候需要設(shè)置路徑
具體操作如下
export LD_LIBRARY_PATH=/home/.....(動(dòng)態(tài)庫(kù)的目錄)
不過(guò)這種設(shè)置方法只是在當(dāng)前的session中有效
你可以修改配置文件實(shí)現(xiàn)任何session都有效
2.環(huán)境變量的設(shè)置
一 般來(lái)說(shuō),配置交叉編譯工具鏈的時(shí)候需要指定編譯工具的路徑,此時(shí)就需要設(shè)置環(huán)境變量。例如我的mips-linux-gcc編譯器在“/opt /au1200_rm/build_tools/bin”目錄下,build_tools就是我的編譯工具,則有如下三種方法來(lái)設(shè)置環(huán)境變量:
1、直接用export命令:
#export PATH=$PATH:/opt/au1200_rm/build_tools/bin
查看是否已經(jīng)設(shè)好,可用命令export查看:
[root@localhost bin]# export
declare -x BASH_ENV="/root/.bashrc"
declare -x G_BROKEN_FILENAMES="1"
declare -x HISTSIZE="1000"
declare -x HOME="/root"
declare -x HOSTNAME="localhost.localdomain"
declare -x INPUTRC="/etc/inputrc"
declare -x LANG="zh_CN.GB18030"
declare -x LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
declare -x LESSOPEN="|/usr/bin/lesspipe.sh %s"
declare -x LOGNAME="root"
declare -x LS_COLORS="no=00:fi=00:di=01;34:ln=01;36:pi=40;33:so=01;35:bd=40;33;01:cd=40;33;01:or=01;05;37;41:mi=01;05;37;41:ex=01;32:*.cmd=01;32:*.exe=01;32:*.com=01;32:*.btm=01;32:*.bat=01;32:*.sh=01;32:*.csh=01;32:*.tar=01;31:*.tgz=01;31:*.arj=01;31:*.taz=01;31:*.lzh=01;31:*.zip=01;31:*.z=01;31:*.Z=01;31:*.gz=01;31:*.bz2=01;31:*.bz=01;31:*.tz=01;31:*.rpm=01;31:*.cpio=01;31:*.jpg=01;35:*.gif=01;35:*.bmp=01;35:*.xbm=01;35:*.xpm=01;35:*.png=01;35:*.tif=01;35:"
declare -x MAIL="/var/spool/mail/root"
declare -x OLDPWD="/opt/au1200_rm/build_tools"
declare -x PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/usr/X11R6/bin:/root/bin:/opt/au1200_rm/build_tools/bin"
declare -x PWD="/opt/au1200_rm/build_tools/bin"
declare -x SHELL="/bin/bash"
declare -x SHLVL="1"
declare -x SSH_ASKPASS="/usr/libexec/openssh/gnome-ssh-askpass"
declare -x SSH_AUTH_SOCK="/tmp/ssh-XX3LKWhz/agent.4242"
declare -x SSH_CLIENT="10.3.37.152 2236 22"
declare -x SSH_CONNECTION="10.3.37.152 2236 10.3.37.186 22"
declare -x SSH_TTY="/dev/pts/2"
declare -x TERM="linux"
declare -x USER="root"
declare -x USERNAME="root"
可以看到,環(huán)境變量已經(jīng)設(shè)好,PATH里面已經(jīng)有了我要加的編譯器的路徑。
2、修改profile文件:
#vi /etc/profile
在里面加入:
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"
3. 修改.bashrc文件:
# vi /root/.bashrc
在里面加入:
export PATH="$PATH:/opt/au1200_rm/build_tools/bin"
后兩種方法一般需要重新注銷(xiāo)系統(tǒng)才能生效,最后可以通過(guò)echo命令測(cè)試一下:
# echo $PATH
看看輸出里面是不是已經(jīng)有了/my_new_path這個(gè)路徑了。
-----------------------------------------------------------------------------------
“/bin”、“/sbin”、“/usr/bin”、“/usr/sbin”、“/usr/local/bin”等路徑已經(jīng)在系統(tǒng)環(huán)境變量中了,如果可執(zhí)行文件在這幾個(gè)標(biāo)準(zhǔn)位置,在終端命令行輸入該軟件可執(zhí)行文件的文件名和參數(shù)(如果需要參數(shù)),回車(chē)即可。
如果不在標(biāo)準(zhǔn)位置,文件名前面需要加上完整的路徑。不過(guò)每次都這樣跑就太麻煩了,一個(gè)“一勞永逸”的辦法是把這個(gè)路徑加入環(huán)境變量。命令 “PATH=$PATH:路徑”可以把這個(gè)路徑加入環(huán)境變量,但是退出這個(gè)命令行就失效了。要想永久生效,需要把這行添加到環(huán)境變量文件里。有兩個(gè)文件可 選:“/etc/profile”和用戶主目錄下的“.bash_profile”,“/etc/profile”對(duì)系統(tǒng)里所有用戶都有效,用戶主目錄下 的“.bash_profile”只對(duì)這個(gè)用戶有效。
“PATH=$PATH:路徑1:路徑2:...:路徑n”,意思是可執(zhí)行文件的路徑包括原先設(shè)定的路徑,也包括從“路徑1”到“路徑n”的所有路徑。 當(dāng)用戶輸入一個(gè)一串字符并按回車(chē)后,shell會(huì)依次在這些路徑里找對(duì)應(yīng)的可執(zhí)行文件并交給系統(tǒng)核心執(zhí)行。那個(gè)“$PATH”表示原先設(shè)定的路徑仍然有 效,注意不要漏掉。某些軟件可能還有“PATH”以外類型的環(huán)境變量需要添加,但方法與此相同,并且也需要注意“$”。
注意,與DOS/Window不同,UNIX類系統(tǒng)環(huán)境變量中路徑名用冒號(hào)分隔,不是分號(hào)。另外,軟件越裝越多,環(huán)境變量越添越多,為了避免造成混亂,建議所有語(yǔ)句都添加在文件結(jié)尾,按軟件的安裝順序添加。
格式如下():
# 軟件名-版本號(hào)
PATH=$PATH:路徑1:路徑2:...:路徑n
其他環(huán)境變量=$其他環(huán)境變量:...
在“profile”和“.bash_profile”中,“#”是注釋符號(hào),寫(xiě)在這里除了視覺(jué)分隔外沒(méi)有任何效果。
設(shè)置完畢,注銷(xiāo)并重新登錄,設(shè)置就生效了。如果不注銷(xiāo),直接在shell里執(zhí)行這些語(yǔ)句,也能生效,但是作用范圍只限于執(zhí)行了這些語(yǔ)句的shell。
相關(guān)的環(huán)境變量生效后,就不必老跑到軟件的可執(zhí)行文件目錄里去操作了。
from:http://blog.csdn.net/kpgood/archive/2009/03/07/3965446.aspx
使用linux的朋友越來(lái)越多了,在linux下做開(kāi)發(fā)首先就是需要配置環(huán)境變量,下面以配置java環(huán)境變量為例介紹三種配置環(huán)境變量的方法。
1.修改/etc/profile文件
如果你的計(jì)算機(jī)僅僅作為開(kāi)發(fā)使用時(shí)推薦使用這種方法,因?yàn)樗杏脩舻膕hell都有權(quán)使用這些環(huán)境變量,可能會(huì)給系統(tǒng)帶來(lái)安全性問(wèn)題。
(1)用文本編輯器打開(kāi)/etc/profile
(2)在profile文件末尾加入:
JAVA_HOME=/usr/share/jdk1.5.0_05
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
(3)重新登錄
注解:
a. 你要將 /usr/share/jdk1.5.0_05jdk 改為你的jdk安裝目錄
b. linux下用冒號(hào)“:”來(lái)分隔路徑
c. $PATH / $CLASSPATH / $JAVA_HOME 是用來(lái)引用原來(lái)的環(huán)境變量的值,在設(shè)置環(huán)境變量時(shí)特別要注意不能把原來(lái)的值給覆蓋掉了,這是一種常見(jiàn)的錯(cuò)誤。
d. CLASSPATH中當(dāng)前目錄“.”不能丟,把當(dāng)前目錄丟掉也是常見(jiàn)的錯(cuò)誤。
e. export是把這三個(gè)變量導(dǎo)出為全局變量。
f. 大小寫(xiě)必須嚴(yán)格區(qū)分。
2. 修改.bashrc文件
這種方法更為安全,它可以把使用這些環(huán)境變量的權(quán)限控制到用戶級(jí)別,如果你需要給某個(gè)用戶權(quán)限使用這些環(huán)境變量,你只需要修改其個(gè)人用戶主目錄下的.bashrc文件就可以了。
(1)用文本編輯器打開(kāi)用戶目錄下的.bashrc文件
(2)在.bashrc文件末尾加入:
set JAVA_HOME=/usr/share/jdk1.5.0_05
export JAVA_HOME
set PATH=$JAVA_HOME/bin:$PATH
export PATH
set CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export CLASSPATH
(3)重新登錄
3. 直接在shell下設(shè)置變量
不贊成使用這種方法,因?yàn)閾Q個(gè)shell,你的設(shè)置就無(wú)效了,因此這種方法僅僅是臨時(shí)使用,以后要使用的時(shí)候又要重新設(shè)置,比較麻煩。
只需在shell終端執(zhí)行下列命令:
export JAVA_HOME=/usr/share/jdk1.5.0_05
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar