使用举例:(有libtest.a静态库)

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

说明:

1)-I(大写i):指定头文件搜索路径;

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

2)-L(大写l):指定库文件搜索路径;

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

3)-l(小写l):指定要连接的库名称;

表示:编译程序到系统默认路进搜索,如果找不到,到当前目录,如果当前目录找不到,则到LD_LIBRARY_PATH等环境变量置顶的路进去查找,如果还找不到,那么编译程序提示找不到库。
本例子使用的是test库,库文件名是libtest.a,库名是test。很容易看出,把库文件名的头lib和尾.test去掉就是库名了。

注意:1.库的添加顺序;2.相互依赖需要多次引入/配置编译属性;

linux gcc/g++编译参数 -l(大写i)-L(大写l) -l(小写l)相关推荐

  1. linux gcc g++编译命令选项

    gcc/g++在执行编译工作的时候,总共需要4步 1.预处理,生成.i的文件[预处理器cpp] 2.将预处理后的文件不转换成汇编语言,生成文件.s[编译器egcs] 3.有汇编变为目标代码(机器代码) ...

  2. Linux gcc/g++链接编译顺序详解

    gcc/g++链接时对库的顺序要求 -LdirAdd directory dir to the list of directories to be searched for -l. -llibrary ...

  3. <Linux常用开发工具使用(yum、vim、gcc/g++、gdb、make/Makefile等)>——《Linux》

    目录 1.Linux 软件包管理器 yum 1.1什么是软件包: 1.2 关于 rzsz: 1.3 如何安装软件: 1.4 如何卸载软件: 2.Linux开发工具 3. Linux编辑器-vim使用 ...

  4. <<Linux基础环境常用工具—yum、vim、gcc/g++、gdb、git等>>

    Linux基础环境常用工具-yum.vim.gcc/g++.gdb.git等. 1.软件包管理器: yum 2.编辑器:vim 3.编译器:gcc/g++ 4.调试器:gdb 5.项目自动化构建工具: ...

  5. 【Linux】gcc/g++、gdb的使用

    文章目录 一.前言 二.gcc的基本使用 1. 预处理 2. 编译 3. 汇编 4. 链接 三.函数库 四.gcc常用选项总结 五.gdb的使用 1. 背景知识 2. 基本使用 一.前言 在学习本文前 ...

  6. Linux下gcc/g++编译器gdb调试器和makefile的使用

    文章目录 一.gcc的使用 gcc选项 二.gdb的使用 三.Linux项目自动化构建工具-make/Makefile 3.1 概念 3.2 使用 3.3 原理 一.gcc的使用 首先我们知道一个C/ ...

  7. 【LINUX修行之路】——工具篇gcc/g++的使用和自动化构建工具make/makefile

    学习范围:✔️LINUX ✔️ gcc/g++✔️make/makefile 本文作者:蓝色学者 文章目录 一.前言 二.概念 什么是gcc/g++? 什么是make/makefile? 三.教程 3 ...

  8. gcc/g++ 的参数总结(二)

    gcc 参数总结 如果是 c++,直接将 gcc 改为 g++ 即可. 1. gcc 编译流程 预处理,Pre-Processing:gcc -E test.c -o test.i //.i文件 编译 ...

  9. 不同的编译器:GCC G++ C C++的区别

    gcc 是c的编译器,g++是c++的编译器.cc一般是一个符号连接,指向gcc.CC一般是makefile里面的一个名字,具体是什么根据实际情况决定. gcc和g++都是GNU(组织)的一个编译器. ...

  10. GCC G++ C C++的区别

    gcc 是c的编译器,g++是c++的编译器.cc一般是一个符号连接,指向gcc.  CC一般是makefile里面的一个名字,具体是什么根据实际情况决定.  gcc和g++都是GNU(组织)的一个编 ...

最新文章

  1. uboot引导kernel - 3 -uboot给内核传参详解
  2. 喀什市2021年高考成绩查询,2021年新疆高考查分网站查分网址:http://www.xjzk.gov.cn/...
  3. 使用OPATCH_DEBUG环境变量调试Opatch工具
  4. 干货:计算机网络知识总结
  5. [剑指offer] 数组中只出现一次的数字
  6. JAVA引用和垃圾回收
  7. 那些不回微信的人,都在看什么?
  8. 继电器rc吸收电路取值_继电器的工作原理以及驱动电路解析
  9. java电子商务源码解读 b2b2c o2o
  10. Kafka笔记1(初步认识)
  11. (转载)Java多线程的监控分析工具(VisualVM)
  12. python代码怎么弄颜色_python的颜色显示
  13. Matlab和Fluent联合仿真实现涡激振动
  14. 计算机科学与技术的学习路线
  15. 伍斯特理工学院计算机科学硕士,美国伍斯特理工学院计算机科学硕士入学要求.pdf...
  16. Not showing null elements
  17. C2 CompilerThread9 长时间占用CPU解决方案
  18. python怎么加图片_python如何增加背景图片
  19. C#插件开发之带控件的插件开发(基础篇)
  20. python高阶学习之一:c++调用python

热门文章

  1. python右对齐输出数字怎么办_解决python让数字右对齐的方法
  2. java stream流处理
  3. 吉他即兴Solo演奏训练教程
  4. 基于AT89C51单片机的超声波传感器测距【程序详细代码及注释】
  5. Ubuntu18.04 (WSL) 编译RK3399 Android8.1源码
  6. 我要写整个中文互联网界最牛逼的JVM系列教程 | 「JVM与Java体系架构」章节:虚拟机与Java虚拟机介绍
  7. R数据分析:竞争风险模型的做法和解释二
  8. nanovna使用说明_白色NanoVNA 矢量网络分析仪天线短波 MF HF VHF便携式频谱分析仪...
  9. 【文化课每周学习记录】2019.3.17——2019.3.23
  10. archlinux下Thinkpad的trackpoint配置