gcc编译器在编译时查找头文件在哪里?

Pro*_*mah 0 c unix

我在使用gcc编译C文件时遇到错误 - 由于没有为dce/rpc.h找到这样的文件/目录,因此给出了错误.我应该在哪里寻找它?

SKi*_*SKi 6

此命令打印包含路径:

gcc -xc -v -
Run Code Online (Sandbox Code Playgroud)

在我的linux框中,结果如下:

#include <...> search starts here:
 /usr/local/include
 /usr/lib/gcc/i586-redhat-linux/4.4.1/include
 /usr/include
End of search list.
Run Code Online (Sandbox Code Playgroud)

使用交叉gcc,路径可能非常难以判断:

#include <...> search starts here:
 /opt/OSELAS.Toolchain-2011.11.0/arm-v5te-linux-gnueabi/gcc-4.6.2-glibc-2.14.1-binutils-2.21.1a-kernel-2.6.39-sanitized/lib/gcc/arm-v5te-linux-gnueabi/4.6.2/include
 /opt/OSELAS.Toolchain-2011.11.0/arm-v5te-linux-gnueabi/gcc-4.6.2-glibc-2.14.1-binutils-2.21.1a-kernel-2.6.39-sanitized/lib/gcc/arm-v5te-linux-gnueabi/4.6.2/include-fixed
 /opt/OSELAS.Toolchain-2011.11.0/arm-v5te-linux-gnueabi/gcc-4.6.2-glibc-2.14.1-binutils-2.21.1a-kernel-2.6.39-sanitized/lib/gcc/arm-v5te-linux-gnueabi/4.6.2/../../../../arm-v5te-linux-gnueabi/include
 /opt/OSELAS.Toolchain-2011.11.0/arm-v5te-linux-gnueabi/gcc-4.6.2-glibc-2.14.1-binutils-2.21.1a-kernel-2.6.39-sanitized/sysroot-arm-v5te-linux-gnueabi/usr/include
End of search list
Run Code Online (Sandbox Code Playgroud)

所以不要试图去试试find它,你可能会走错路.