C语言头文件、库文件的查找路径

本文详细介绍了C语言头文件和库文件在Redhat5/Fedora14系统下的查找路径。头文件查找涉及#include指令的两种形式,而库文件查找分为链接阶段和运行时阶段。在链接阶段,gcc会按照特定顺序查找库文件,运行时阶段则依赖于动态链接库的查找路径。文章还提到了ldconfig工具及其作用。
摘要由CSDN通过智能技术生成

一、讨论环境

*操作系统:Redhat5/Fedora14

*编译器:gcc 4.5.1

以下言论仅确保在以上环境中适用。别的环境,大家可以通过类比方法,得到启示。


二、C语言头文件的查找路径

C语言,使用include指令,包含头文件,但又细分两种形式:

1、形式一:#include “file1”

  gcc先在当前目录(指包含本条#include指令的源文件所在的目录)寻找file1,如果找不到,继续在由-iquote选项(如果有的话)指定的目录中寻找file1

  例如,在文件/usr/include/sys/stat.h中,包含指令#include “types.h”,那么gcc先在/usr/include/sys目录下寻找types.h文件。嗯,在该目录下,确实存在一个types.h的文件。现假设我们把这个文件移动到另一个目录:mv /usr/include/sys/types.h /bar/foo/,我们在编译时,可以通过-iquote选项,在不改变stat.h的情况下,正常编译(当然,通常不建议这样做):

gcc -iquote /bar/foo -I/usr/include/sys *.o

2、形式二:#include <file2>

  gcc

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值