简体   繁体   English

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

[英]View default include path of C headers in Mac OS X by `gcc -v`?

I tried to find the default include path of the C compiler in Mac OS X (Mavericks) by using gcc -v : 我尝试使用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

It seems to tell me the path is /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 , but I'm afraid it is not the true path. 它似乎告诉我路径是/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/c++/4.2.1 ,但我害怕这不是真正的道路。 I think the true path for including standard C library is /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include because <sys/syscall.h> locates in the later path, which is /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/sys/syscall.h 我认为包含标准C库的真正途径是/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include因为<sys/syscall.h>位于在后面的路径中,这是/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/sys/syscall.h

Does anyone have ideas about how to view all the default include path of C library in Mac OS X? 有没有人有关于如何在Mac OS X中查看C库的所有默认包含路径的想法?

You need to ask the preprocessor , not gcc , for telling the default include path. 您需要询问预处理器 ,而不是gcc ,以告知默认的包含路径。

You can say: 你可以说:

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

In order to list default include path for both C and C++: 为了列出C和C ++的默认包含路径:

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

(The path that you've listed above is the one that was used to configure GCC while building.) (您在上面列出的路径是在构建时用于配置 GCC的路径 。)


Another way to list the default include path would be: 列出默认包含路径的另一种方法是:

gcc -x c -v -E /dev/null

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM