在linux下设置共享库路径
来源:互联网 发布:剑网3菊花插件数据 编辑:程序博客网 时间:2024/06/14 09:47
1定义
Linux环境变量名,该环境变量主要用于指定查找共享库(动态链接库)时除了默认路径之外的其他路径。(该路径在默认路径之前查找)
移植程序时的经常碰到需要使用一些特定的动态库,而这些编译好的动态库放在我们自己建立的目录里,这时可以将这些目录设置到LD_LIBRARY_PATH中
2示例
当执行函数动态链接.so时,如果此文件不在缺省目录下‘/lib’ and ‘/usr/lib’.
那么就需要指定环境变量LD_LIBRARY_PATH
假如现在需要在已有的环境变量上添加新的路径名,则采用如下方式:
LD_LIBRARY_PATH=NEWDIRS:$LD_LIBRARY_PATH.(newdirs是新的路径串)
(注:GNU系统可以自动添加在 /etc/ld.so.conf文件中来实现环境变量的设置)
3设置方法
由于linux的shell版本不一样,各个版本的语法有差异。兼容性不好。
3.1:
以下是bash的设置方法。
在linux下可以用export命令来设置这个值,比如
在linux终端下输入:export LD_LIBRARY_PATH=/opt/au1200_rm/build_tools/bin: $LD_LIBRARY_PATH:
然后再输入:export
即会显示是否设置正确
export方式在重启后失效,所以也可以用 vim /etc/bashrc ,修改其中的LD_LIBRARY_PATH变量。
例如:LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/au1200_rm/build_tools/bin
3.2:
以下是csh的设置方法
setenv LD_LIBRARY_PATH $LD_LIBRARY_PATH:/opt/au1200_rm/build_tools/bin
4:用列
#!/bin/bash
#set the path of lib for tool
if [ $SHELL = "/bin/bash" ] ; then
echo "BASH"
fi
-------------------------------------------------------------------------
#!/bin/csh
if ( "$SHELL" == "/bin/csh" ) then
setenv LD_LIBRARY_PATH ${LD_LIBRARY_PATH}:./
endif
5:总结,各个版本的shell的语法有差异。不兼容。一般情况下。列:在bash上执行用csh语法写的脚本会出错。
但是有个神奇的用法:可以在bash脚本上调用并执行用csh语法写的脚本。反之,也可。
列:
#!/bin/bash
#set the path of lib for gentdefdatatool
if [ $SHELL = "/bin/bash" ] ; then
echo "BASH"
./.debugcsh
echo "CSH END"
fi
#.debugcsh :是用csh语法写的脚本。
0 0
- 在linux下设置共享库路径
- linux 共享库路径设置
- Linux下共享库路径配置问题
- linux下动态共享库搜索路径
- Linux下共享库路径配置问题
- 共享库路径设置
- linux下设置nfs共享
- linux下设置共享目录
- Linux下共享库路径配置问题[ZZ|FY]
- Linux下动态共享库 连接和加载路径
- linux下共享库的系统路径和查找
- Linux下动态共享库 连接和加载路径
- Linux下动态共享库 连接和加载路径
- Linux下动态共享库 连接和加载路径
- Linux共享库路径配置
- Linux共享库路径配置
- Linux共享库路径配置
- Linux共享库路径配置
- poj 3252(详解)
- 没有窗口怎么解决SetTimer问题
- 拓扑排序
- HDU 4920 Matrix multiplication 解题报告(暴力)
- (4.4.1)使用storyboard实现页面跳转,简单的数据传递
- 在linux下设置共享库路径
- Node.js使用Sequelize ORM框架
- 微处理器之Trace Cache浅析
- 计算工资
- 树状数组应用:区间去重求和 hdoj 3333
- ios ViewController 页面跳转
- 从零开始学习OpenWrt完美教程(中文站镜像)
- vector容器建图
- 好久没有写博客了 随便搞上一篇