Linux运行错误:error while loading shared libraries: xxx.so.0:cannot open shared object file: No such fil

链接时可以通过-L和-l来指定自己的库,因此链接可以通过,但是运行时,系统仍无法找到指定的库,需要简单配置一下。

解决方法1:

  可以直接在将自己的库所在路径添加到/etc/ld.so.conf文件中。但一般这个文件中的内容都是一句“include /etc/ld.so.conf.d/*.conf”,因此最好在/etc/ld.so.conf.d/目录下新建一个文件 , 如“xxx.conf”,然后将自己的库所在路径添加到这个conf文件中。

修改完文件后,以root身份运行   /sbin/ldconfig -v   。这一步必不可少,别丢了。

这时重新运行自己的程序,就没有问题了。

解决方法2:

   如果知道链接库文件的版本号,可以在库文件所在目录建立该库文件的软链接文件,如:

   我想链接 libSDL.so,可以用 ln -s libSDL.so libSDL-1.2.so.o来建立带版本号的软链接。然后重新运行程序就没问题了。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。