[英]Cannot open shared object file: No such file or directory; Running or Debugging in Eclipse
[英]cannot open shared object file: No such file or directory
我遇到了使用火炬在群集的頭節點上找不到的共享庫。 我已經構建了庫,並在通過g ++編譯自己的程序“荒謬”時指定了庫的正確路徑。 所以對我來說看起來很奇怪。 任何的想法? 謝謝並恭祝安康!
[tim@user1 release]$ make
...
...
g++ -pipe -W -Wall -fopenmp -ggdb3 -O2 -I/home/tim/program_files/ICMCluster/ann_1.1.1/include -I/home/tim/program_files/ICMCluster/libsvm-2.89 -I/home/tim/program_files/ICMCluster/svm_light -o absurdity xxxxxx.o -L/home/tim/program_files/ICMCluster/ann_1.1.1/release/lib -L/home/tim/program_files/ICMCluster/libsvm-2.89/release/lib -L/home/tim/program_files/ICMCluster/svm_light/release/lib -lm -ljpeg -lpng -lz -lANN -lpthread -lsvm -lsvmlight
[tim@user1 release]$ ./absurdity
./absurdity: error while loading shared libraries: libsvmlight.so: cannot open shared object file: No such file or directory
[tim@user1 release]$ ls /home/tim/program_files/ICMCluster/svm_light/release/lib/libsvmlight.so -l
-rwxr-xr-x 1 tim Brown 121407 Jan 31 12:14 /home/tim/program_files/ICMCluster/svm_light/release/lib/libsvmlight.so
[tim@user1 release]$ LD_LIBRARY_PATH= /home/tim/program_files/ICMCluster/svm_light/release/lib:$LD_LIBRARY_PAT
[tim@user1 release]$ export LD_LIBRARY_PATH
[tim@user1 release]$ ./absurdity
./absurdity: error while loading shared libraries: libsvmlight.so: cannot open shared object file: No such file or directory
[tim@user1 release]$ ls /home/tim/program_files/ICMCluster/svm_light/release/lib
libsvmlight.a libsvmlight.so
從我的答案復制到這里: https : //stackoverflow.com/a/9368199/485088
以root用戶身份運行
ldconfig
以更新高速緩存-如果仍然不能解決問題,則需要將路徑添加到文件ld.so.conf
(只需在其ld.so.conf
的行中鍵入),或者最好將其添加到ld.so.conf.d
目錄中的新文件(易於刪除)。
您的LD_LIBRARY_PATH
不包含libsvmlight.so
的路徑。
$ export LD_LIBRARY_PATH=/home/tim/program_files/ICMCluster/svm_light/release/lib:$LD_LIBRARY_PATH
sudo ldconfig
ldconfig創建必要的鏈接並緩存到在命令行指定目錄,/ etc / ld.so.conf文件以及受信任目錄(/ lib和/ usr / lib)中找到的最新共享庫。
通常,軟件包管理器在安裝新庫時會處理此問題,但並非總是如此(特別是在使用cmake
安裝庫時)。
如果此輸出為空
$ echo $LD_LIBRARY_PATH
請設置默認路徑
$ LD_LIBRARY_PATH=/usr/local/lib
在超級計算機上工作時,我在運行時收到此錯誤:
module load python/3.4.0
screen
python
要解決該錯誤,我只需要在屏幕終端中重新加載模塊即可:
module load python/3.4.0
python
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.