无法加载/usr/local/lib(Fedora x64)中存在的共享库
cannot load shared library that exists in /usr/local/lib (Fedora x64)
当试图运行我刚刚成功编译的程序时,我会得到以下错误:
/src/sensors/liser_scan_producer:加载共享库时出错:liblcm.so.1:无法打开共享对象文件:没有这样的文件或目录
ls /usr/local/lib/liblcm*
产生
/usr/local/lib/liblcm.la
/usr/local/lib/liblcm.so
/usr/local/lib/liblcm.so.1
/usr/local/lib/liblcm.so.1.2.0
我已经执行了几次sudo ldconfig
,并且为了冗余起见,在LD_LIBRARY_PATH中添加了/usr/local/lib。
这耗尽了我在stackOverflow中看到的答案列表。
有人发现问题了吗?
感谢@Joachim_Pileborg:
ldconfig使用文件/etc/ld.so.conf请重新运行ldconfig,然后重试
这样做解决了这个问题,尽管我觉得奇怪的是,/usr/local/lib在自然过程中不会被检查。
我在这次提交中为/usr/local/lib和/usr/local/lib64目录找到了一个有效的解决方案。
首先以root用户身份运行此命令以添加这些目录。
tee /etc/ld.so.conf.d/local.conf <<EOF
/usr/local/lib
/usr/local/lib64
EOF
下一次以root身份运行:
ldconfig
相关文章:
- 将成员变量添加到共享库中的类中,不会破坏二进制兼容性吗
- C++模板来检查友元函数的存在
- 既然存在危险,为什么项目要使用-I include开关
- 是否可以通过C++扩展强制多个python进程共享同一内存
- 我们可以访问一个不存在的联盟的成员吗
- 为什么我的共享库中存在展开符号
- 如果同时存在共享库和动态库,则链接器将首选哪个库?
- 放置 新 在共享内存中已存在的对象上
- 如何使用共享内存在CUDA中转置巨大的任意矩阵
- 函数 NetShareGetInfo 始终返回 2310(此共享不存在)
- 我可以检查共享内存中是否存在地址
- 为什么存在共享_ptr的原子过载
- 加载具有相同符号的两个共享库时是否存在符号冲突
- 几个使用相同原型的共享对象导致错误:数据库中已经存在文件
- 无法加载/usr/local/lib(Fedora x64)中存在的共享库
- 分析共享库是否存在重复代码链接
- 使用Visual Studio将静态构建的库链接到共享库可能存在内存风险
- 有没有更好的方法来检查boost共享内存段的存在
- 如何从不存在的(在编译时)文件夹链接共享库
- 模板类的实例之间是否存在共享的作用域