linux命令(55):环境变量:LIBRARY_PATH 和 LD_LIBRARY_PATH的区别

添加环境变量:http://www.javashuo.com/article/p-ynsbmyob-cv.htmlhtml

PATH是可执行文件的环境变量。spa

LIBRARY_PATH 和 LD_LIBRARY_PATH 是Linux下的两个环境变量,两者的含义和做用分别以下:code

二者的共同点是库,库是这两个路径和PATH路径的区别;htm

LIBRARY_PATH环境变量用于在程序编译期间查找动态连接库时指定查找共享库的路径;blog

例如,指定gcc编译须要用到的动态连接库的目录。设置方法以下(其中,LIBDIR1和LIBDIR2为两个库目录):开发

export LIBRARY_PATH=LIBDIR1:LIBDIR2:$LIBRARY_PATH

LD_LIBRARY_PATH环境变量用于在程序加载运行期间查找动态连接库时指定除了系统默认路径以外的其余路径;get

注意,LD_LIBRARY_PATH中指定的路径会在系统默认路径以前进行查找。编译

设置方法以下(其中,LIBDIR1和LIBDIR2为两个库目录):class

export LD_LIBRARY_PATH=LIBDIR1:LIBDIR2:$LD_LIBRARY_PATH

举个例子,咱们开发一个程序,常常会须要使用某个或某些动态连接库,为了保证程序的可移植性,能够先将这些编译好的动态连接库放在本身指定的目录下,而后按照上述方式将这些目录加入到LD_LIBRARY_PATH环境变量中,这样本身的程序就能够动态连接后加载库文件运行了。变量

区别与使用:

开发时,设置LIBRARY_PATH,以便gcc可以找到编译时须要的动态连接库。

发布时,设置LD_LIBRARY_PATH,以便程序加载运行时可以自动找到须要的动态连接库。

相关文章
相关标签/搜索