44
我正在嘗試編寫一個構建腳本 - 並且想要確定包含是否包含系統。所以我希望g ++告訴我它使用的包含路徑。轉儲包含來自g ++的路徑
cpp -v似乎是最明顯的最佳鏡頭,但它並沒有給我C++路徑。
所以,我想:
g++ -Xpreprocessor -v
不工作很正確 - G ++捕獲-v爲它自己的詳細輸出。
感謝, 奧利弗
我正在嘗試編寫一個構建腳本 - 並且想要確定包含是否包含系統。所以我希望g ++告訴我它使用的包含路徑。轉儲包含來自g ++的路徑
cpp -v似乎是最明顯的最佳鏡頭,但它並沒有給我C++路徑。
所以,我想:
g++ -Xpreprocessor -v
不工作很正確 - G ++捕獲-v爲它自己的詳細輸出。
感謝, 奧利弗
喬納森Wakely一個更好的選擇(適用於鐺太):
g++ -E -x c++ - -v < /dev/null
clang++ -E -x c++ - -v < /dev/null
我注意到有指定語言CPP的標誌。這像一個魅力。
cpp -xc++ -v < /dev/null
#include "..." search starts here:
#include <...> search starts here:
/usr/local/Cellar/gcc/4.7.0/gcc/lib/gcc/x86_64-apple-darwin11.4.0/4.7.0/../../../../include/c++/4.7.0
/usr/local/Cellar/gcc/4.7.0/gcc/lib/gcc/x86_64-apple-darwin11.4.0/4.7.0/../../../../include/c++/4.7.0/x86_64-apple-darwin11.4.0
/usr/local/Cellar/gcc/4.7.0/gcc/lib/gcc/x86_64-apple-darwin11.4.0/4.7.0/../../../../include/c++/4.7.0/backward
/usr/local/Cellar/gcc/4.7.0/gcc/lib/gcc/x86_64-apple-darwin11.4.0/4.7.0/include
/usr/local/include
/usr/local/Cellar/gcc/4.7.0/gcc/include
/usr/local/Cellar/gcc/4.7.0/gcc/lib/gcc/x86_64-apple-darwin11.4.0/4.7.0/include-fixed
/usr/include
/System/Library/Frameworks
/Library/Frameworks
End of search list.
只注意到它是海灣合作委員會的-x c++ to be -xc++
重要4.2
或等價,'G ++ -E -x C++ - -v開發/ null',這意味着你可以確信你」重新使用與用於編譯的g ++'相同的可執行文件 – 2012-08-14 08:31:45
Cheers - 這是一個更好的選擇。在叮噹中工作。 – Oliver 2012-08-14 23:20:54
可以簡化爲'g ++ -E -x C++ -v/dev/null'。 – Rufflewind 2017-03-17 19:41:00