关于gcc的include问题- uu.Net - 博客园

这次在写makefile的时候终于对头文件有了完整的理解。

1.编译器有默认的搜索目录,比如c的默认目录就是/usr/include,我们在源文件中引用的

include <stdio.h>就是从此目录下搜索得来

2.编译器不会自动搜索子目录,要引用子目录中的头文件,需要包含从默认路径起的{jd1}路径,比如include <system/time.h>,其实引用的是/usr/inlcude/system/time.h

3.系统自带的头文件的引用,我们可以使用<>来包含进来,自己引用的路径,我们通过””来包含进来。自己引用的路径,可以通过编译时添加-I参数引用自己的路径,比如

我引用了一个第三方的lib,这个lib的头文件安装在/usr/lib/3rd_lib/include;那么我需要在我的makefile编译参数中添加 –I/usr/lib/3rd_lib/include

郑重声明:资讯 【关于gcc的include问题- uu.Net - 博客园】由 发布,版权归原作者及其所在单位,其原创性以及文中陈述文字和内容未经(企业库qiyeku.com)证实,请读者仅作参考,并请自行核实相关内容。若本文有侵犯到您的版权, 请你提供相关证明及申请并与我们联系(qiyeku # qq.com)或【在线投诉】,我们审核后将会尽快处理。
—— 相关资讯 ——