freesurfer | 共享库安装/链接问题:error while loading shared libraries: libquadmath.so.0

当系统报错找不到共享库如libquadmath.so.0时,可以检查其是否存在并确认路径。如果存在但系统找不到,可能需要更新共享库配置,例如使用ldconfig或编辑/etc/ld.so.conf。若库不在标准路径下,可以通过设置LD_LIBRARY_PATH环境变量。如果库不存在,则需安装,可以使用yum或手动下载rpm包。遇到yum安装问题,可能需要更换源。
摘要由CSDN通过智能技术生成

该方案能解决大部分共享库安装问题

首先检查库的文件是不是真的存在,libquadmath.so.0

locate libquadmath.so.0

(没有locate就按照报错提示安装 sudo apt-get xxx)

1.如果真的存在,像我下面这样报告了位置,那么则是因为系统链接库时路径不对

/snap/gnome-3-38-2004/119/usr/lib/x86_64-linux-gnu/libquadmath.so.0
/snap/gnome-3-38-2004/119/usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
/snap/gnome-3-38-2004/140/usr/lib/x86_64-linux-gnu/libquadmath.so.0
/snap/gnome-3-38-2004/140/usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
/snap/gnome-42-2204/111/usr/lib/x86_64-linux-gnu/libquadmath.so.0
/snap/gnome-42-2204/111/usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0
/usr/lib/x86_64-linux-gnu/libquadmath.so.0
/usr/lib/x86_64-linux-gnu/libquadmath.so.0.0.0

这样说明执行调用共享库时,系统按照默认共享库路径找不到共享库文件

所以需要修改系统的共享路径的设置

1)如果共享库在/lib或者/usr/lib下,那么执行一下ldconfig命令即可

2)如果共享库安装到了/usr/local/lib很多开源共享库都会安装到该目录下,或者其他目录下,

那么先把新共享库目录加入到共享库配置文件 /etc/ld.so.conf 中

再执行ldconfig

参考下面这篇文章来修改共享库配置文件:

error while loading shared libraries: libopencv_highgui.so.3.4: cannot open shared object file解决方法_Keeling1720的博客-CSDN博客

3)如果共享文件安装到其他非lib或者非usr/lib目录下,并且不想在配置文件中加路径或没有权限加路径,那么就export一个全局变量

export LD_LIBRARY_PATH=/usr/local/xxxx

这样每次运行程序的时候就会去这个目录中找共享库,可以设置多个搜索目录,冒号隔开

比如安装了一个mysql在/usr/local/mysql目录下,其中一大堆库文件在/usr/local/mysql/lib下面,那么可以在.bashrc或者.bash_profile或者shell里面加入以下语句

export LD_LIBRARY_PATH=/usr/local/mysql/lib:$LD_LIBRARY_PATH

但这只是临时方案,适用于没有权限时

2.如果这个库本身不存在,那么就需要安装 

参考这个

解决软件启动报error while loading shared libraries: libgd.so.2: cannot open shared object错误

一般用yum install xxx,如果yum搜索不到对应包,就需要你手动下载对应rpm包

建议直接网上搜索你的包名字+系统版本,一般会有很多包安装的教程

如果yum命令安装有问题,参考下面这个

yum命令安装出错,可能由于镜像源,需要换源,过程中记得备份source.list再更新换源

Ubuntu22.04 解决 E: 无法定位软件包 yum_qq_44807154的博客-CSDN博客

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值