Ubuntu系統下安裝ImageMagick出錯的解決過程
前言
ImageMagick是一個很好用的對圖片進行格式轉換、縮減大小、裁剪等等進行操作的工具,在Windows和Linux系統都可以安裝,因為我們的環(huán)境是Ubuntu環(huán)境,在安裝過程中遇到些問題,下面就來一起看看解決的過程和方法吧。
發(fā)現問題
在嘗試使用 apt-get install
來安裝 ImageMagick 時,出現了依賴缺失的問題:
The following packages have unmet dependencies
使用 apt-get update
、apt-get upgrade
命令更新索引和升級所有軟件包之后,依然無法安裝。 又使用 apt-get install -f
命令來修復依賴關系,仍然沒有效果。
解決過程
于是使用 aptitude 來安裝,發(fā)現命令行中沒有 aptitude,只能通過 apt-get install aptitude
命令先把 aptitude 裝上,結果又遇到了依賴缺失的問題:
The following packages have unmet dependencies Depends: libstdc++6 (>= 4.9) but 4.8.4-2ubuntu1~14.04 is to be installed
嘗試使用 apt-get install
來安裝 libstdc++6,無法成功安裝。 因此手動下載 libstdc++6 的 deb 包進行安裝:
$ apt-get download libstdc++6 $ sudo dpkg -i libstdc++6_4.9.2-10ubuntu13_amd64.deb
得到錯誤提示:
dpkg: dependency problems prevent configuration of libstdc++6:amd64: libstdc++6:amd64 depends on gcc-4.9-base (= 4.9.2-10ubuntu13); however: Version of gcc-4.9-base:amd64 on system is 4.9.3-0ubuntu4.
解決方法
這是由于我的 Ubuntu 中裝的 gcc 版本為 4.9.2-0ubuntu4,而 libstdc++6依賴于 4.9.2-10ubuntu13 版本。
- 因此,通過
apt-get install gcc-4.9-base=4.9.2-10ubuntu13
安裝所依賴的 gcc-4.9-base 版本。 - 然后,再執(zhí)行上面安裝 libstdc++6 的命令
- 之后,用
apt-get install
來安裝 aptitude - 最后,用
aptitude
來安裝 ImageMagick
總算把 ImageMagick 裝上了,總結一下安裝過程遇到的問題:主要是依賴庫缺失,遇到這種情況,可以考慮使用 aptitude install 來安裝,它會自動安裝所需依賴,一步到位。
我遇到的問題中比較特殊的一點是,系統中的 aptitude 不見了,需要使用 apt-get install
來先把 aptitude 裝上,而安裝時又提示依賴缺失libstdc++6,看起來像陷入了死循環(huán)。所以使用 apt-get download
和 dpkg -i 手動下載 libstdc++6 包進行安裝,安裝過程中又依賴于特定版本的 gcc-4.9-base,因此使用 apt-get install 將其裝上,然后再回去安裝 libstdc++6,最后安裝 aptitude,搞定!
總結
以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關文章
Linux服務器利用防火墻iptables策略進行端口跳轉的方法
這篇文章主要介紹了Linux服務器利用防火墻iptables策略進行端口跳轉的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-10-10Apache NameVirtualHost *:80 has no VirtualHosts問題解決辦法
這篇文章主要介紹了Apache NameVirtualHost *:80 has no VirtualHosts問題解決辦法,一個很簡單的配置性錯誤,需要的朋友可以參考下2014-08-08在Linux中列出Systemd下所有正在運行的服務的方法指南
Systemd是Linux的系統和服務管理器; init進程的替代品,與SysV 和LSB init腳本兼容,systemctl命令是管理systemd的主要工具,在這篇文章中,我們將演示如何 Linux中列出systemd下所有正在運行的服務,感興趣的同學可以借鑒閱讀2023-06-06