linux下g++编译程序时-I(大写i)与-L(大写l)-l(小写l)的作用详解

作为一个linux入门级使用者,gcc/g++ 的简单操作已经用过多次, 但是有时稍微复杂一点的程序就会使用到库。在遇到问题的时候我查了挺多前辈总结的资料,也留个脚本希望对朋友们有个帮助。如果也能处理你的问题,我会感到很开心,嘻嘻。
例如:libz.so

创新互联公司坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、成都网站建设、外贸网站建设、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的金门网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

g++ -o compress  compress.cpp  -I/home/include/  -L/lib/  -lz

(1) -I (大写i)

编译程序按照-I指定的路进去搜索头文件。

-I/home/include/表示将-I/home/include/目录作为第一个寻找头文件的目录,寻找的顺序是:

 /home/include/ -->/usr/include-->/usr/local/include

(2)-L(大写l)

表示:编译程序按照-L指定的路进去寻找库文件,一般的在-L的后面可以一次用-l指定多个库文件。

-L/lib/表示到/lib/目录下找库文件

(3)-l(小写l)

表示:编译程序到系统默认路进搜索,如果找不到,到当前目录,如果当前目录找不到,则到LD_LIBRARY_PATH等环境变量置顶的路进去查找,如果还找不到,那么编译程序提示找不到库。

本例子使用的是gunzip库,库文件名是libz.so,库名是z。很容易看出,把库文件名的头lib和尾.so去掉就是库名了。

总结

到此这篇关于linux 下 g++编译程序时-I(大写i) 与-L(大写l)-l(小写l) 的作用详解的文章就介绍到这了,更多相关linux g++编译程序内容请搜索创新互联以前的文章或继续浏览下面的相关文章希望大家以后多多支持创新互联!


当前名称:linux下g++编译程序时-I(大写i)与-L(大写l)-l(小写l)的作用详解
标题路径:http://scjbc.cn/article/jcddei.html

其他资讯