Ubuntu/Debian

关注公众号 jb51net

关闭
操作系统 > Ubuntu/Debian >

Ubuntu系统中使用apt-file命令来查找缺失文件

昊在月儿湾

有的时候编译或者安装软件包,会提示缺少某个文件,如xxx.so文件等,虽然我们知道这是因为没有安装某个必须的软件包所致,却不知道具体是哪个软件包。

解决这样的问题,在fedora/RHEL 上,使用yum whatprovides 可以很轻松的查到。相应的,在ubuntu下面有什么解决方案?可使用apt-file工具。
apt-file 是一个命令行界面的 APT 包搜索工具。当我们在编译源代码时,时有缺少文件的情况发生。此时,通过 apt-file 就可以找出该缺失文件所在的包,然后将缺失的包安装后即可让编译顺利进行了。

1、首先安装apt-file管理器


apt-get install apt-file

2、接着更新apt-file的缓存


apt-file update

此过程将持续一会儿,以后如果修改了 sources.list,仍需执行该操作。

3、现在你可以使用apt-file搜索缺失的文件了
例如:
在安装WPS时,提示缺少libgthread-2.0.so.0
此时,输入

apt-file search libgthread-2.0.so.0

输出:
libglib2.0-0: /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0
说明需要安装libglib2.0-0

apt-get install libglib2.0-0:i386
就可以了(:i386表示安装的是32位的)

4、列出包中的文件
使用以下命令:


apt-file list 包名称

可以列出包中所含的文件。