赞
踩
有时候,我们需要浏览系统头文件的内容从而知道该头文件里都有哪些函数以及类型,但如何找到这些系统头文件所在的文件目录呢?可以通过写一个简单的c++程序,来观察g++是怎么查找系统头文件的。
譬如下面的一段程序:
- #include<nonexist.h> // This is a non-existant system header
-
- int main ( int argc, char* argv[] )
- {
- return 0;
- }
gcc version 4.7.2 (Debian 4.7.2-5)
COLLECT_GCC_OPTIONS='-v' '-c' '-shared-libgcc' '-mtune=generic' '-march=i586'
/usr/lib/gcc/i486-linux-gnu/4.7/cc1plus -quiet -v -imultiarch i386-linux-gnu -D_GNU_SOURCE test_open.cpp -quiet -dumpbase test_open.cpp -mtune=generic -march=i586 -auxbase test_open -version -o /tmp/ccQHsJ9S.s
GNU C++ (Debian 4.7.2-5) version 4.7.2 (i486-linux-gnu)
compiled by GNU C version 4.7.2, GMP version 5.0.5, MPFR version 3.1.0-p10, MPC version 0.9
GGC heuristics: --param ggc-min-expand=64 --param ggc-min-heapsize=64350
ignoring nonexistent directory "/usr/local/include/i386-linux-gnu"
ignoring nonexistent directory "/usr/lib/gcc/i486-linux-gnu/4.7/../../../../i486-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
/usr/include/c++/4.7
/usr/include/c++/4.7/i486-linux-gnu
/usr/include/c++/4.7/backward
/usr/lib/gcc/i486-linux-gnu/4.7/include
/usr/local/include
/usr/lib/gcc/i486-linux-gnu/4.7/include-fixed
/usr/include/i386-linux-gnu
/usr/include
End of search list.
GNU C++ (Debian 4.7.2-5) version 4.7.2 (i486-linux-gnu)
compiled by GNU C version 4.7.2, GMP version 5.0.5, MPFR version 3.1.0-p10, MPC version 0.9
GGC heuristics: --param ggc-min-expand=64 --param ggc-min-heapsize=64350
Compiler executable checksum: 62bfd556e00a93e3d7f66f6876d73826
test_open.cpp:1:22: fatal error: nonexist.h: No such file or directory
compilation terminated.
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。