簡體   English   中英

“ g ++ -MMD”比包含掃描更好嗎?

[英]Is “g++ -MMD” better than include scanning?

在查看構建系統時,許多系統(SCons,bjam,cmake,Tundra等)都具有內置的#include掃描器。 但是gcc和icc提供了-MMD (或-MD )選項,該選項輸出C ++文件所依賴的頭文件的名稱。

-MMD依賴項選項似乎是可靠的。 如果將#include添加到C文件中,其時間戳將更改,因此構建系統將對其進行重新編譯。 如果將#include添加到頭文件中,其時間戳將更改,並且它將重新編譯所有受影響的C文件。

包括掃描系統中斷,但是-MMD在我看來似乎很健壯。 哪個最好,為什么?

-MMD最好,因為您付出的原因以及更多。

作為正常編譯過程的一部分,讓編譯器輸出依賴項可以確保在編譯和查找依賴項時,完全相同的一組編譯器選項(例如-I路徑和宏)有效。 與確保為兩個單獨的工具使用相同的選項相比,這樣做的冗余度較小,出錯的可能性較小。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM