Chinaunix首页 | 论坛 | 博客
  • 博客访问: 6086970
  • 博文数量: 2759
  • 博客积分: 1021
  • 博客等级: 中士
  • 技术积分: 4091
  • 用 户 组: 普通用户
  • 注册时间: 2012-03-11 14:14
文章分类

全部博文(2759)

文章存档

2019年(1)

2017年(84)

2016年(196)

2015年(204)

2014年(636)

2013年(1176)

2012年(463)

分类: LINUX

2014-03-12 08:49:13

原文地址:动态库文件.so not found 作者:zuoan126

问题:

root@WHU:/home/zuoan/program/so/01test# ldd test2
linux-gate.so.1 =>  (0xb76f8000)
libtest2.so => not found
libc.so.6 => /lib/i386-linux-gnu/libc.so.6 (0xb752e000)
/lib/ld-linux.so.2 (0xb76f9000)

      解决:

链接时OK了,像必用的"-L MyLibPath -lxxx " 或 绝对路径“MyLibPath/libxxx.so”的形式.
linux 可执行文件在$PATH里找,动态库在$LD_LIBRARY_PATH(这个一般就是/lib /usr/lib两个目录) 
-L 指定的"MyLibPath"不在环境变量里,当然找不到了.

linux 开发环境推荐的搭建方式.

可以在自己的home目录里(快捷方式:运行push ~ 或cd ~ 或 cd即可),分别建立bin lib目录.
然后 vim .bashrc
#在文件尾部 将bin lib 两个目录设置到这两个环境变量里来.
#. 注意这里一定是export. 不然不生效的.
   
     export PATH=.:$HOME/bin:$PATH
     
export LD_LIBRARY_PATH=.:$HOME/lib:$LD_LIBRARY_PATH
复制代码
#. 然后重启动shell 或者
. .bashrc 或者
source .bashrc 即可 重新设置环境变量.
#. 检查一下: echo $LD_LIBRARY_PATH 有值 就说明OK了.

#. 然后把lib文件,建个符号链接放在lib下,运行那个可执行文件就OK啦


帖子:


阅读(1929) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~