
我看過這個:從 Cygwin 中刪除不需要的依賴項……但看來該腳本只是建議識別沒有其他套件依賴的套件:這使其成為一個非常聰明的腳本,但也許並不完全是您所需要的...並且(在我看來)然後它會涉及手動刪除軟體包,可能分成幾個階段(因為每次刪除可能會顯示更多需要刪除的軟體包)。另外我想知道 Cygwin 中是否有更優雅的解決方案。
我犯了一個錯誤,在安裝之前沒有先複製我的 Cygwin 目錄make
。我安裝它只是因為我想做一個小的具體實驗。
make
當然會導致安裝整個 C 語言...將我的 Cygwin 設定的大小增加了 1.5 GB!
卸載make
(驚訝!)只卸載了下面的鮮奶油山上的櫻桃。我意識到卸載所需的每個依賴項make
無疑會破壞我需要的一切...但是 Cygwin 是否有可能保留一些安裝內容、時間甚至可能原因的「日誌」...?然後有某種機制可以撤銷最近的安裝作業嗎?
之後
在 David Posthill 有益地揭露有一個日誌之後,不幸的是,這揭示了額外的依賴關係複雜性:準確識別必須刪除的內容。
人們真正需要的是一個實用程式來產生已安裝依賴項的 DAG,大概與安裝時間和原因的時間順序相結合......以及一個實用程式來完成所有檢查和刪除工作!
這讓我有點驚訝,因為如果我錯了,請糾正我,Linux 套件管理器確實有能力做這樣的事情:你安裝一個高級套件…當你卸載它時,它也會刪除所有依賴項。沒有,而且任何後續安裝的軟體包都不需要... Cygwin 似乎不存在這樣的機制。