GCC预处理时头文件搜索路径

GCC预处理时头文件搜索路径

//测试系统信息
linux@ubuntu:~$ uname -a         
Linux ubuntu 3.5.0-23-generic #35~precise1-Ubuntu SMP Fri Jan 25 17:15:33 UTC 2013 i686 i686 i386 GNU/Linux
linux@ubuntu:~$ cat /proc/version
Linux version 3.5.0-23-generic (buildd@akateko) (gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5) ) #35~precise1-Ubuntu SMP Fri Jan 25 17:15:33 UTC 2013
linux@ubuntu:~$ cat /etc/issue         
Ubuntu 12.04.2 LTS \n \l

linux@ubuntu:~$ lsb_release -a         
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 12.04.2 LTS
Release:        12.04
Codename:       precise
//本地编译器编译的时候
#include "name.h"
在当前目录下找,如果没找到
去-iquote目录下找,如果找不到
去-I目录下找,如果找不到
去C_INCLUDE_PATH变量指定的路径找,如果找不到
去/usr/lib/gcc/i686-linux-gnu/4.6/include/下找,如果找不到
去usr/local/include/下找,如果找不到
去/usr/include/下找,如果找不到,报错
 
#include <name.h>-I目录下找,如果找不到
去C_INCLUDE_PATH变量指定的路径找,如果找不到
去/usr/lib/gcc/i686-linux-gnu/4.6/include/下找,如果找不到
去usr/local/include/下找,如果找不到
去/usr/include/下找,如果找不到,报错

//交叉编译器编译的时候
#include "name.h"
在当前目录下找,如果没找到
去-iquote目录下找,如果找不到
去-I目录下找,如果找不到
去C_INCLUDE_PATH变量指定的路径找,如果找不到
去编译器所在目录的include路径中找,找不到,报错

#include <name.h>-I目录下找,如果找不到
去C_INCLUDE_PATH变量指定的路径找,如果找不到
去C_INCLUDE_PATH变量指定的路径找,如果找不到
去编译器所在目录的include路径中找,找不到,报错
验证方式,在每个路径中都放一个文件,文件名为测试的头文件,但是内容为路径
然后设置环境变量

键入gcc -I../include main.c -E -o tar.c -iquote../../include
看tar.c里面的内容
然后删除对应的头文件,重复
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值