我已经包含sys/ptrace.h在我的 C 程序中。
的输出/usr/lib/gcc/x86_64-linux-gnu/4.8/cc1 -v给出了以下路径,其中 gcc 查找头文件
#include "..." search starts here:
#include <...> search starts here:
/usr/lib/gcc/x86_64-linux-gnu/4.8/include
/usr/local/include
/usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed
/usr/include
End of search list.
Run Code Online (Sandbox Code Playgroud)
gcc -M我的程序的输出给出了以下头文件位置
pt.o: pt.c /usr/include/stdc-predef.h /usr/include/stdio.h \
/usr/include/features.h /usr/include/x86_64-linux-gnu/sys/cdefs.h \
/usr/include/x86_64-linux-gnu/bits/wordsize.h \
/usr/include/x86_64-linux-gnu/gnu/stubs.h \
/usr/include/x86_64-linux-gnu/gnu/stubs-64.h \
/usr/lib/gcc/x86_64-linux-gnu/4.8/include/stddef.h \
/usr/include/x86_64-linux-gnu/bits/types.h \
/usr/include/x86_64-linux-gnu/bits/typesizes.h /usr/include/libio.h \
/usr/include/_G_config.h /usr/include/wchar.h \
/usr/lib/gcc/x86_64-linux-gnu/4.8/include/stdarg.h \
/usr/include/x86_64-linux-gnu/bits/stdio_lim.h \
/usr/include/x86_64-linux-gnu/bits/sys_errlist.h \
/usr/include/x86_64-linux-gnu/sys/ptrace.h
Run Code Online (Sandbox Code Playgroud)
由于/usr/include/x86_64-linux-gnu/未包含在第一个输出中,gcc 如何查找sys/ptrace.h?
编辑:
echo '#include <sys/ptrace.h>' | gcc -fsyntax-only -xc -v -H - …
我正在运行 Mac OS X 并且我正在使用 DHCP。我的印象是我的计算机首先去路由器查找 IP 地址,等等。那么为什么路由器 IP 地址不是 中的条目/etc/resolv.conf?相反,该文件包含两个 IP 地址,它们的格式甚至不是192.168.1.0- 255.