Package-Management
通過 make install 查找添加/修改文件的可靠方法
昨天我正要問這個問題,當我點擊查看按鈕時,“類似問題”視窗已被修改為向我顯示這個:如何找出使用 make 安裝的文件?
我認為它已經足夠好,但我不滿意
我正在閱讀 lfs 的書,並且正在討論包管理的章節。有一個指向提示部分的連結,可以更廣泛地了解該主題,其中一個提示說:
除此之外,我還注意到目前沒有 100% 可靠的方法來知道哪些文件
$$ are $$在“make install”(或其他命令)期間修改。 fakeroot 方法當然不會阻止軟體包將文件安裝到它想要的位置。
我的理解:
- 碰巧makefile可能無法正確使用$DESTDIR
- 文本來自 2006 年,因此可能已過時(但確實發生了)
我一直使用預編譯的包管理器,我不知道背後的團隊多久必須糾正這些錯誤。我不明白如何解析生成文件可能無法“100% 可靠”
獲取完成的文件操作列表的一種範例方法
make install
是執行:make -n install
此命令不會安裝/更改任何內容,只會列印沒有
-n
密鑰實際執行的操作(正常安裝)
stow
:GNU Stow 是 /usr/local 的軟體安裝管理器。使用符號連結,GNU Stow 可以幫助您保持安裝分開(例如 /usr/local/stow/emacs 與 /usr/local/stow/perl),同時保持它們都在 /usr/local 下的錯覺。
和
CheckInstall
:CheckInstall 跟踪您的安裝腳本(“make install”、“make install_modules”、“setup”等)創建或修改的所有文件,建構標準二進制包並將其安裝在您的系統中,讓您能夠解除安裝它您的發行版的標準包管理實用程序。