Linux-找不到共享库

Linux - cannot find shared library

本文关键字:共享 找不到 Linux-      更新时间:2023-10-16

使用Code::Blocks(13.12)/g++在Ubuntu 14.04上使用DVB V5库创建一些测试代码。该库是按照下载中的说明下载、构建和安装的。

如果一切正常,然后磁盘崩溃。

决定从头开始重新安装所有东西,而不是使用备份,并再次下载libdvbv5源代码并重建它。一切似乎都很好。

替换了代码::从备份中阻止测试项目,并将其全部清除并重新生成,但在调试或从命令行运行时。。。。它现在说:

"加载共享库时出错:libdvbv5.so.0:无法打开共享对象文件:没有这样的文件或目录"

图书馆好像就在那里。/usr/local/lib中的ls-l提供

lrwxrwxrwx 1 root root       17 May 14 21:34 libdvbv5.so ->     libdvbv5.so.0.0.0
lrwxrwxrwx 1 root root       17 May 14 21:34 libdvbv5.so.0 ->    libdvbv5.so.0.0.0
-rwxr-xr-x 1 root root   752569 May 14 21:34 libdvbv5.so.0.0.0

没有它,代码无论如何都不会构建,而且确实如此。我必须承认,我有点困惑,为什么它抱怨libdvbv5.so.0,而链接到的是libdvbv.so,而这是到libdvbve5.so.0.0的直接链接。

我为这件事挠头-发生了什么事?

修复了安装libdvbv5后忘记运行ldconfig来重建缓存的问题。转到libdir,如/usr/local/lib-

/usr/local/lib$ sudo ldconfig