如何检查某个库是否已安装?

如何检查某个库是否已安装?

在 Linux 中,如何检查某个库是否已安装?(当然是通过命令行)。

就我现在的具体情况而言,我想检查 libjpeg 是否已安装。

答案1

要以独立于发行版*的方式执行此操作,您可以使用 ldconfig 和 grep,如下所示:

ldconfig -p | grep libjpeg

如果未安装 libjpeg,则不会有输出。如果已安装,则每个可用版本都会有一行。

用您想要的任何库替换 libjpeg,您就拥有了一种通用的、独立于发行版*的方法来检查库的可用性。

如果由于某种原因未设置 ldconfig 的路径,您可以尝试使用其完整路径来调用它,通常是/sbin/ldconfig

**99% 的时间*

答案2

您可以检查您的发行版的包管理器(aptitude、yum 等),但由于您没有提供您的发行版,所以我无法给您正确的命令。

另一种方法是运行gcc -ljpeg,如果出现“ld: library not found for -ljpeg”,则表示 gcc 没有找到该库(但并不意味着它没有安装),如果出现类似“Undefined symbol: “_main”,referenced from: ...”之类的信息,则表示已经找到了 libjpeg。

locate libjpeg; ls /usr/lib/libjpeg*; ls /lib/libjpeg*还有其他方法可以查找系统中是否安装了该库

还有许多其他方法可以检查,如果您给我们更多背景信息(为什么您需要检查 libjpeg 是否已安装),我们可以为您的具体情况提供最佳解决方案。

答案3

我用哪里公用事业。

样本:

l1feh4ck3r@xxx:~$ whereis libjpeg
libjpeg: /usr/lib/libjpeg.so /usr/lib/libjpeg.a /usr/lib/libjpeg.la

答案4

对于基于 deb 的发行版,你可以这样做

dpkg -s packagename

或者如果你只知道文件名,请使用

locate filename

文件名通常是 libsomething.so[.version]。

相关内容