當前位置: 首頁>>技術教程>>正文


如何可視地顯示軟件包的依賴關係?

, ,

問題描述

這隻是出於娛樂和好奇:是否有一個工具可以用來可視化地將軟件包的依賴關係顯示為圖表?

即,給定軟件包所依賴的軟件包。這可以是使用ASCII圖形(例如樹或Mercurial的graphlog)顯示的命令行工具,也可以是可視化顯示依賴關係圖的GUI工具。可以從視覺上顯示依賴關係的任何其他工具組合也可以工作。

最佳方案

debtree

根據the application’s websitedebtree程序包提供“類固醇的程序包依賴圖”。

注意:在計劃軟件升級時,這也非常有用。此應用程序能夠根據係統上尚未安裝的軟件包繪製依賴關係圖。這將從sources.list文件(通常位於/etc/apt/sources.list)中讀取,並且它將使用該列表執行實時查詢。

下圖是針對程序包dpkg運行debtree的示例。這是其依賴關係的示意圖:

要從命令行(CtrlAltt)安裝debtree,請輸入以下命令:

sudo apt-get install debtree

Usage

  • 創建一個.dot文件(一個有向圖,請參見man dot聯機幫助頁)

    debtree --with-suggests <package> >out.dot
    
  • 從.dot文件創建圖形(PNG)

    dot -T png -o out.png out.dot
    
  • 創建一個圖形(後記)並使用Okular進行查看

    debtree <package> | dot -Tps | okular - &
    

請注意,針對較大的程序包(例如gedit)運行此應用程序時,圖像很快會變得笨拙且難以辨認。

請注意,apt-rdepends也可以類似的方式使用,但是在我看來,將輸出管道輸出到圖形中會更加複雜。

另請參閱:Ubuntu debtree man page

參考資料

本文由Ubuntu問答整理, 博文地址: https://ubuntuqa.com/zh-tw/article/11812.html,未經允許,請勿轉載。