Rhel
如果我不關心 red hat 包中的調試支持,那麼在 specs 文件中關閉 build-id 支持有什麼缺點?
作為對這個問題的跟進,如果我對擁有這些調試功能不感興趣怎麼辦 - 我如何簡單地阻止安裝這些 build-id 文件(調試資訊包?)?最終,我不關心(至少在不久的將來)支持客戶端調試。另一方面,在同一台機器上安裝我們不同的客戶端 redhat 產品(包)時,我需要克服已知的“build-id 文件夾衝突”。那怎麼能做到呢?
--excludepath=/usr/lib/.build-id
是一個乾淨的解決方法,是的。據我所知,失去“調試能力”是唯一的缺點。此選項跳過的文件甚至不會導致rpm --verify
失敗。然而,失去“調試能力”的後果不僅僅是限制獲得有用輸出的能力gdb
;例如,如果錯誤報告工具想要提供有意義的堆棧跟踪,則需要手動干預。%define _build_id_links none
也可以,如果您正在建構包並且不想與它們一起提供調試資訊。您的兩個問題針對包裹的不同方面。
rpm --excludepath
影響安裝包時發生的情況,而%define _build_id_links
影響建構包時發生的情況。如果您對建構軟體包感興趣,那rpm --excludepath
沒有幫助是正常的,因為那時它不相關。另請注意,正如您連結到的錯誤報告所建議的那樣,build-id 衝突表示打包問題。如果你正在建構包,你應該修復包中的問題,而不是解決它們。