dpkg -L 不显示包的所有文件

dpkg -L 不显示包的所有文件

我正在尝试查找安装的文件libboost-all-dev使用dpkg,但它不起作用。首先,表明我已经安装了该包:

$ find /usr/lib/ -name '*boost*sys*'
/usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.67.0
/usr/lib/x86_64-linux-gnu/libboost_filesystem.a
/usr/lib/x86_64-linux-gnu/libboost_filesystem.so
/usr/lib/x86_64-linux-gnu/libboost_system.so.1.67.0
/usr/lib/x86_64-linux-gnu/libboost_system.a
/usr/lib/x86_64-linux-gnu/libboost_system.so

現在運行:

$ dpkg -l boost
dpkg-query: no packages found matching boost
$ dpkg -L libboost-all-dev
/.
/usr
/usr/share
/usr/share/doc
/usr/share/doc/libboost-all-dev
/usr/share/doc/libboost-all-dev/copyright
/usr/share/doc/libboost-all-dev/changelog.gz

所以它只显示两个文件:copyrightchangelog.gz。所有库和头文件都丢失了。奇怪的是dpkg -l根本找不到任何东西:

$ dpkg -l a
dpkg-query: no packages found matching a

答案1

基本上,这个包只是一个元包,依赖于一堆其他包裹

例如这里有一个依赖链:

libboost-all-dev --> libboost-system-dev --> libboost-system1.67-dev

/usr/lib/x86_64-linux-gnu/libboost_system.so源自何处。

您可以使用dpkg -S PATH来查找哪个包创建了相应的文件。

相关内容