|
|
|
|
| 为什么一个程序ldd可以找到他需要的共享库,但执行它时去说找不到库 |
 为什么一个程序ldd可以找到他需要的共享库,但执行它时去说找不到库 - xiaye [ 2005-01-24 16:52 | 340 byte(s)]
 Re: 为什么一个程序ldd可以找到他需要的共享库,但执行它时去说找不到库 - baowen [ 2005-01-25 12:45 | 39 byte(s)]
 Re: 为什么一个程序ldd可以找到他需要的共享库,但执行它时去说找不到库 - suowei1979 [ 2005-01-24 17:56 | 77 byte(s)]
 Re: 为什么一个程序ldd可以找到他需要的共享库,但执行它时去说找不到库 - xiaye [ 2005-01-24 21:36 | 71 byte(s)]
 Re: 为什么一个程序ldd可以找到他需要的共享库,但执行它时去说找不到库 - suowei1979 [ 2005-01-25 09:21 | 336 byte(s)]
 Re: 为什么一个程序ldd可以找到他需要的共享库,但执行它时去说找不到库 - gotop167 [ 2005-01-24 17:32 | 234 byte(s)]
|
|
|
|
[Original]
[Print]
[Top]
|
我有一个程序notepad,他要用到libxxx.so.2.我用ldd notepad,可以显示libxxx.so.2库被正确的找到。但我执行notepad时,他报措说:
notepad: error while loading shared libraries:libxxx.so.2: cannot open shared object file: No such file or directory
libxxx.so.2确实存在。这种情况有什么可能的原因吗?
谢谢
|
|
|
[Original]
[Print]
[Top]
|
|
[Original]
[Print]
[Top]
|
有两个办法:
1:如果你有root权限,可以更新(把你的动态库的路径加入)/etc/ld.so.conf这个文件后,用/sbin/ldconfig命令更新
2:如果没有的话,只好在sh下这样执行了:export LD_LIBRARY_PATH = "$LD_LIBRARY_PATH:."了
|
|
|
[Original]
[Print]
[Top]
|
|
[Original]
[Print]
[Top]
|
我man了一下
ldd - print shared library dependencies
SYNOPSIS
ldd [OPTION]... FILE...
DESCRIPTION
ldd prints the shared libraries required by each program or shared
library specified on the command line.
|
|
|
----
|
|
[Original]
[Print]
[Top]
|
|
|