1 問題發現
有的時候編譯或者安裝軟件包,會提示缺少某個文件,比如頭文件或者動態鏈接庫xxx.so文件等, 雖然我們知道這是因爲沒有安裝某個必須的軟件包所致,卻不知道具體是哪個軟件包
2 問題解析
解決這樣的問題,在fedora/RHEL 上,使用yum whatprovides可以很輕鬆的查到
相應的,在ubuntu下面有什麼解決方案?
可使用apt-file工具。
3 apt-file
apt-file 是一個命令行界面的 APT 包搜索工具。當我們在編譯源代碼時,時有缺少文件的情況發生。此時,通過 apt-file 就可以找出該缺失文件所在的包,然後將缺失的包安裝後即可讓編譯順利進行了。
3.1 安裝配置apt-file
首先安裝apt-file管理器
sudo apt-get install apt-file
接着更新apt-file的緩存
apt-file update
此過程將持續一會兒,以後如果修改了sources.list,仍需執行該操作
3.2 apt-file搜索文件依賴
現在你可以使用apt-file搜索缺失的文件了
在安裝WPS時,提示缺少libgthread-2.0.so.0
此時,輸入
apt-file search libgthread-2.0.so.0
然後使用apt-get install可安裝缺失的軟件包
apt-get install libglib2.0-0
3.3 列出包中的文件
apt-file list 包名稱