
在https://unix.stackexchange.com/a/141619/674
我不會只儲存 makefile。雖然卸載目標可能不會(或者也許,不應該)需要任何其他東西才能成功,這不是保證。
這意味著保留原始包的副本。不過,如果有舊版的公共檔案並且您不擔心它會消失,那就沒有多大意義了。無論如何,您可以稍後再次下載。唯一的問題是對於自動工具的東西,你需要
./configure
先運行,如果你使用不同的選項uninstall
可能會錯過一些東西——但我認為這並不是什麼大問題。有時我會記錄某些東西的特定配置。我在裡面保留了獨立的源碼包
/usr/local/src
,不過只要你需要的時候能找到就無所謂了。
為什麼「對於自動工具的東西,你需要./configure
先運行,如果你使用不同的選項uninstall
可能會錯過一些東西」?
卸載透過configure、make 和make install 安裝的應用程式需要configure 檔案的原因是什麼?
謝謝。
答案1
假設該套件有一個--enable-foo
配置選項,使其建立其 foo 子系統並安裝libfoo.a在…/lib 和一個富可執行檔位於…/bin 中。因此,您安裝它並清理臨時建置目錄。
然後您幾個月後回來,重新解壓縮軟體包 tarball 以將其卸載。您需要重新執行./configure
來重建 makefile,以便您可以執行此操作make uninstall
,如果您不使用--enable-foo
建置/安裝/卸載的命令進行配置libfoo.a和富可能不包含在各自的 make 目標中。在這種情況下,make uninstall
就會錯過清理工作libfoo.a和富。
這將是值得保存的配置狀態來自原始安裝的建置目錄,因為它記錄了使用的配置選項。