linux 下 g++编译程序时,-I(大写i) 与-L(大写l)-l(小写l) 的作用
2017-08-26 12:24
239 查看
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下通过源码编译安装程序(configure/make/make install的作用 )
- Linux下通过源码编译安装程序(configure/make/make install的作用 )
- linux下用g++编译c程序:xx没有定义解决办法
- arm-qt编译程序错误解决(没有-lts,arm-linux-g++找不到)
- Linux下G++怎么编译使用Boost库的程序
- Linux gcc g++ 编译C++程序
- opencv之在Linux下编译opencv程序的两种方式g++、cmake
- opencv之在Linux下编译opencv程序的两种方式g++、cmake
- Linux下通过源码编译安装程序(configure/make/make install的作用,然后在/etc/profile文件里修改PATH环境变量)
- aix 使用g++编译c++程序的编译选项 -- linux到aix移植经验
- G++ 4.4.7 无法编译模板程序,Vs可以,和解?智者尾部留言,本人第一次使用vs pro,通常并且习惯在linux下写些小东西,虽然程序简单;
- Linux下通过源码编译安装程序(configure/make/make install的作用 )
- Linux编译安装中configure、make和make install各自的作用
- linux tr命令详解 在处理字符串大写 转小写时候找到的 特此记录
- make的-j命令(加速Linux程序编译)
- Linux下,添加了#include 的文件编译时为什么要加 -ml ,gcc 加参数 -ml 是起什么作用呢
- Linux编译错误:‘cout’在此作用域中尚未声明
- Golang在windows下交叉编译linux程序
- Linux编译安装中configure、make和make install各自的作用
- C++练手小程序 用vector使小写文本变为大写