![查找库版本](https://linux22.com/image/1390199/%E6%9F%A5%E6%89%BE%E5%BA%93%E7%89%88%E6%9C%AC.png)
我想找出我的系统 (Ubuntu 12.04) 中安装了哪个版本的 C 库。特别是,我对 libnuma 很感兴趣。正确的做法是什么?
cd /usr/lib
ls -l libnuma*
-rw-r--r-- 1 root root 70312 Feb 8 2012 libnuma.a
lrwxrwxrwx 1 root root 12 Feb 8 2012 libnuma.so -> libnuma.so.1
-rw-r--r-- 1 root root 43976 Feb 8 2012 libnuma.so.1
答案1
我将使用它dpkg -l | grep libnuma1
来获取版本。
举个例子,我已经dpkg -l
在 xterm 上运行了,您可以看到我正在运行 xterm 的 278-4 版本。
# dpkg -l | grep xterm
ii lxterminal 0.1.11-4 amd64 LXDE terminal emulator
ii xterm 278-4 amd64 X terminal emulator
答案2
你应该试试
ldconfig -v | grep libnuma
答案3
文件名或内容并不总是跟踪确切的版本,因此您通常需要使用打包系统功能。对于 Ubuntu,您可以转到 packages.ubuntu.com,搜索您的文件,然后查看您的 Ubuntu 版本中的软件包版本。
或者从命令行,您可以先使用 搜索相关包的名称dpkg -S /usr/lib/libnuma.so.1
,它可能会返回libnuma1
包名称。然后运行apt-cache showpkg libnuma1
以查找包版本。apt-cache
输出可能很长,但版本应该在前几行。
答案4
您可以使用pkg-config
:
pkg-config --modversion <your lib name>
例如,在我的电脑中,
pkg-config --modversion fmt
将输出
9.1.0