查看默认包括“gcc -v”在Mac OS X中包含C头的路径?

我尝试使用gcc -v在Mac OS X(Mavericks)中找到C编译器的默认包含路径:

 $ gcc -v Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 Apple LLVM version 5.0 (clang-500.2.79) (based on LLVM 3.3svn) Target: x86_64-apple-darwin13.0.0 Thread model: posix 

它似乎告诉我路径是/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 ,但我害怕这不是真正的道路。 我认为包含标准C库的真正途径是/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include因为位于在后面的路径中,这是/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/sys/syscall.h

有没有人有关于如何在Mac OS X中查看C库的所有默认包含路径的想法?

您需要询问预处理器 ,而不是gcc ,以告知默认的包含路径。

你可以说:

 `gcc -print-prog-name=cc1` -v 

为了列出C和C ++的默认包含路径:

 `gcc -print-prog-name=cc1plus` -v 

(您在上面列出的路径是在构建时用于配置 GCC的路径 。)


列出默认包含路径的另一种方法是:

 gcc -xc -v -E /dev/null gcc -x c++ -v -E /dev/null # (for C/C++)