linux 编译 路径,关于Linux编译时的路径一些说明

关于Linux编译时的路径一些说明

如果源文件(.c)和头文件(.h)在同一个目录

那么就直接包含使用头文件时,就直接包含就行了,不需要路径的说明

举例:

比如现在有main.c,test.c,test.h三个文件,且都在同一个目录/home/user/code下

test.h声明了test.c中的函数

main.c需要使用test.c中的函数

/*main.c文件*/

#include

#include "socket_include/test.h"

如果源文件(.c)和头文件(.h)不在同一个目录

比如现在有main.c,test.c,test.h三个文件,分别在/home/user/code/src和/home/user/code/incline目录下

目录下的文件如下:

/home/user/code/src : main.c,test.c

/home/user/code/incline: test.h

使用相对路径

举例:

/*main.c文件*/

#include

#include "../include/test.h"

使用绝对路径

举例:

/*main.c文件*/

#include

#include "/home/user/code/include/test.h"

其实推荐还是写绝对路径的

使用软链接

这种发法其实就是使用绝对路径,只不过将绝对路径用一个快捷方式表示,这样的话头文件包含就不必写的那么长,特别是在文件目录层级非常多的情况,这种便利越能体现

扩展知识:

linux中默认的系统库函数头文件在/user/include目录下的,当然也提供了一个目录可以放自己的函数头文件的目录,/user/local/inclue

这一块内容详情网上很多资源的,提供参考:

https://blog.csdn.net/jiaweizou/article/details/8153897

http://blog.chinaunix.net/uid-25544300-id-3310491.html

那么我们使用ln命令将自己的头文件软链接(相当于创建一个快捷方式)到这个目录下,并且取名字myinclude

注意:进行软链接的时候需要root权限

2784b0874cf96950ae55f634bfdb2d37.png

出现红色方框的信息的时候表示软链接成功

/*main.c文件*/

#include

#include "myinclude/test.h"

可以对比使用绝对路径来看,这样就简化了一些

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值