换下风格^_^

error while loading shared libraries的解決方法

Linux admin 1481℃ 0评论

自己编译一些程序,而程序难免会引用到别的so文件,但是有些so问总是找不到。报:error while loading shared libraries类似的错误。

./Rserve: error while loading shared libraries: libR.so: cannot open shared object file: No such file or directory

出现这类错误表示,系统不知道xxx.so放在哪个目录下,这时候就要在/etc/ld.so.conf中加入xxx.so所在的目录。

一般而言,有很多的so会存放在/usr/local/lib这个目录底下,去这个目录底下找,果然发现自己所需要的.so文件。

所以,在/etc/ld.so.conf中加入/usr/local/lib这一行,保存之后,再运行:/sbin/ldconfig -v 更新一下配置即可。

转载请注明:极豆技术博客 » error while loading shared libraries的解決方法

喜欢 (0)
捐助本站极豆博客全站无广告。如果您觉得本博客的内容对您小有帮助,可以对我小额赞助,您的赞助将用于维持博客运营。

极豆博客

发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(4)个小伙伴在吐槽
  1. 请问,我在自己的系统中搜索libR.so,发现存在于R_HOME/lib/R/lib文件夹中,那么我在/etc/ld.so.conf是如何修改,是修改为下面的样子吗? include /etc/ld.so.conf.d/*conf include /usr/local/R-2.15.3/lib/R/lib
    liukai2015-11-05 21:44 回复
    • 不对,include是包含子目录的conf文件
      admin2015-11-12 14:46 回复
  2. 你好: 我发现libR.so并不是在/usr/local/lib文件夹中,而是在R_HOME/lib/R/lib文件夹中,那么我是否是将“R_HOME/lib/R/lib”放到/etc/ld.so.conf中哪,另外,具体是怎样放哪?在/etc/ld.so.conf中原来有一行 include xxx/*.conf,那么我是应该另起一行添加include R_HOME/lib/R/lib吗?谢谢!
    liukai2015-11-06 00:26 回复
    • 在/etc/ld.so.conf 同级应该有一个文件夹 /etc/ld.so.conf.d 在里面新建一个.conf文件加入你要添加的so文件的path即可
      admin2015-11-12 14:09 回复