在linux上,很多文件夹下都有socket.h,如下图。
如何决定存储在 asm 文件夹下 vs linux vs bits 下的内容。我假设 sys 下的所有内容都只是 libc
gcc 以什么顺序解析头文件。例如,它是否从 sys 中选择 socket.h,然后是 linux,然后是 sys,然后是 bits 等等?
/usr/include/sys/socket.h,(由 libc 使用)
/usr/include/linux/socket.h
/usr/include/asm/socket.h
/usr/include/asm-generic/socket.h
/usr/include/bits/socket.h(包含在 libc 中)