有的時候編譯或者安裝軟件包,會提示缺少某個文件,如xxx.so文件等,雖然我們知道這是因為沒有安裝某個必須的軟件包所致,卻不知道具體是哪個軟件包。
解決這樣的問題,在fedora/RHEL 上,使用yum whatprovides 可以很輕松的查到。相應的,在ubuntu下面有什么解決方案?可使用apt-file工具。
apt-file 是一個命令行界面的 APT 包搜索工具。當我們在編譯源代碼時,時有缺少文件的情況發(fā)生。此時,通過 apt-file 就可以找出該缺失文件所在的包,然后將缺失的包安裝后即可讓編譯順利進行了。
1、首先安裝apt-file管理器
apt-get install apt-file
2、接著更新apt-file的緩存
apt-file update
此過程將持續(xù)一會兒,以后如果修改了 sources.list,仍需執(zhí)行該操作。
3、現(xiàn)在你可以使用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 包名稱
可以列出包中所含的文件。