如何解决error while loading shared libraries: libpython2.7.so.1.0: cannot open shared object file

问题背景

我是在运行gdb时遇到的这个问题,但是在查找答案的过程中发现:

  1. 不仅仅是对于gdb,应该是所有需要用到python依赖库的软件都可以用这个方法解决
  2. 不仅仅是对于libpython2.7,对于更高版本的应该也适用

注意
上面两点都是猜想,未必真的可以哈哈哈哈哈哈哈哈!!!!

操作系统: Ubuntu 18.04


解决方法

一、已经安装了libpython2.7.so.1.0

如果你确定已经安装了libpython2.7.so.1.0,那么问题就不在于缺少依赖包,而是找不到依赖包。
所以只要让系统能够找到这个依赖包就行了:

  1. 通过whereis命令查找libpython2.7.so.1.0的安装路径:
    whereis libpython2.7.so.1.0	
    
  2. 如果查找到了,继续下一步,如果没有查到,请移步第二种解决方法
  3. 打开/etc/ld.so.conf,将刚才搜索到的路径添加到文件中
    sudo vim /etc/ld.so.conf
    

    拓展
    ld.so.conf文件实际上是系统的共享库清单文件,如果一个应用程序需要某个共享库,那么系统会到这个文件中查找是否有相应的地址。

  4. 重载ld.so.conf文件
    sudo /sbin/ldconfg -v
    

结束~

二、未安装libpython2.7.so.1.0

如果是没有安装,那么执行下面两个命令直接安装一个共享库即可:

apt-get install libpython2.7
sudo apt-get install libatlas3-base

参考资料

  1. 解决:libpython2.7.so.1.0: cannot open shared object file: No such file or directory
  2. 动态库路径配置- /etc/ld.so.conf文件
  3. libpython2.7.so.1.0:无法打开共享对象文件:没有这样的文件或目录
  • 7
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值