gcc 参数总结

如果是 c++,直接将 gcc 改为 g++ 即可。

1. gcc 编译流程

  • 预处理,Pre-Processing:gcc -E test.c -o test.i //.i文件
  • 编译,Compiling:gcc -S test.i -o test.s //.s文件
  • 汇编,Assembling:gcc -c test.s -o test.o //.o文件
  • 链接,Linking:gcc test.o -o test //bin文件

2. 编译

  • gcc -c test.c //.o文件,汇编

    • -c:只编译,不链接,生成 .o 文件;
    $ gcc -Wall -c file1.c file2.c file3.c

    不用指定 .o 文件名,会默认生成 file1.o, file2.o, file3.o

  • gcc -o test test.c //bin可执行文件
  • gcc test.c //a.out可执行文件

3. 常用参数

GCC/G++编译参数含义

  • -l 参数和-L参数

    • l 参数就是用来指定程序要链接的库,-l参数紧接着就是库名,那么库名跟真正的库文件名有什么关系呢?
      就拿数学库来说,他的库名是m,他的库文件名是libm.so,很容易看出,把库文件名的头lib和尾.so去掉就是库名(gcc xxx.c -lm( 动态数学库))

    • -D

      • -DMACRO 以字符串“1”定义 MACRO 宏。#define macro
      • -DMACRO=DEFN 以字符串“DEFN”定义 MACRO 宏。
        • #define MACRO DEFN

gcc/g++ 的参数总结(二)相关推荐

  1. gcc/g++命令参数笔记

    1. gcc -E source_file.c -E,只执行到预编译.直接输出预编译结果. 2. gcc -S source_file.c -S,只执行到源代码到汇编代码的转换,输出汇编代码. 3. ...

  2. gcc/g++命令参数中文帮助手册

    引自: http://www.cnblogs.com/liangxiaxu/articles/2617367.html GCC 1 Section: GNU Tools (1) Updated: 20 ...

  3. 【Linux工具】-gcc/g++

    gcc/g++ 一,简介 二,代码的翻译过程 1,预处理 2,编译 3,汇编 4,链接 (1)静态库 (2)动态库 (3)动静态库比较 三,常见选项 一,简介 我们知道,计算机是只能识别二进制的,那么 ...

  4. Linux 之 编译器 gcc/g++参数详解

    2016年12月9日16:48:53 ----------------------------- 内容目录: [介绍]  gcc and g++分别是gnu的c & c++编译器 gcc/g+ ...

  5. gcc/g++ 参数总结

    GCC:The GNU Compiler Collection 它(GNU Compiler Collection)包含了多种语言的编译器,如 C, C++, Objective-C, Objecti ...

  6. gcc g++ 参数介绍

    C和C++ 编译器是集成的.他们都要用四个步骤中的一个或多个处理输入文件: 预处理 (preprocessing),编译(compilation),汇编(assembly)和连接(linking).源 ...

  7. gcc/g++等编译器 编译原理: 预处理,编译,汇编,链接各步骤详解

    例子:由多个源文件组成的C程序,经过编辑.预处理.编译.链接等阶段才能生成最终的可执行程序.此过程中,在__c__阶段可以发现被调用的函数未定义. A. 编辑和预处理 B. 预处理 C. 编译 D. ...

  8. gcc/g++ 链接库的编译与链接

          程序编译一般需要经预处理.编译.汇编和链接几个步骤.在实际应用中,有些公共代码需要反复使用,就把这些代码编译成为"库"文件.在链接步骤中,连接器将从库文件取得所需的代码 ...

  9. 【转】gcc/g++ 链接库的编译与链接

    转自:gcc/g++ 链接库的编译与链接_Surge-CSDN博客_g++ 链接 gcc/g++ 链接库的编译与链接 surgewong@gmail.com Surge_surgewong_CSDN博 ...

最新文章

  1. 那个曾被阿尔法狗在围棋领域打哭的男人--柯洁,又夺斗地主全国冠军....
  2. 崛起的中国服务器市场迎来旺盛的SPEC测试需求
  3. GitHub发布重大更新,关系到所有程序员!
  4. python正则表达式匹配aabb_Python正则表达式拆分多个匹配项
  5. 洛谷P1828 香甜的黄油 Sweet Butter
  6. JAVA中的那些名词解释
  7. 【Java并发编程】16、ReentrantReadWriteLock源码分析
  8. python改背景颜色_Python Opencv 通过轨迹(跟踪)栏实现更改整张图像的背景颜色
  9. 微信第三方登录测试时报Scope参数错误或没有Scope权限解决方法
  10. java文件编译后,出现xx$1.class的原因
  11. 图片上传限制文件类型
  12. java gwt开发_GWT项目和开发总结
  13. 串口重映射printf
  14. CCL2022 中文语法纠错评测
  15. 【微信小程序】 微信小程序连接本地接口
  16. SD-Host SD_CLK模块
  17. LeetCode每日一题——904. 水果成篮
  18. 服务器系统进不了系统错误代码,重启服务器进入点晴OA的Email模块时提示子系统密码错误,错误代码2027:800403e9,如何解决?...
  19. LHS 查询和 RHS 查询
  20. 【面试】面试之哒哒英语

热门文章

  1. python图像增强_使用Python进行图像增强
  2. movelast对数据记录数有要求吗_客户验厂,电脑坏了,考勤记录数据可以自动生成找回来吗?...
  3. /usr/lib/x86_64-linux-gnu/libQt5Core.so.5: version `Qt_5.12‘ not found解决办法
  4. Nginx增加第三方外部插件
  5. xml里写sql语句大于、小于的正确方法
  6. java一览删除一条数据_可以删除单条数据,不能再返回列表页面,我使用的是Spring MVC...
  7. git pull没有更新成功_关于git pull时出现的问题及解决反思
  8. python导入xlsx转为csv_Python 拆分工作表为单个工作簿
  9. 大数据系列2-liunx基础-1操作系统介绍
  10. 极限编程 Extreme Programming (中英文对照)图形解释