zoukankan      html  css  js  c++  java
  • 4步实现gcc编译

    gcc编译的4步骤

    • 预处理 (hollo.c->hello.i)

       gcc -E
      
      • 展开宏,头文件

      • 替换编译条件

      • 删除注释,空行,空白

    • 编译 (hello.i->hello.s)

      gcc  -S
      
      • 检查语法规范
      • 最消耗时间,系统资源最多
    • 汇编 (hello.s->hello.o)

      gcc -c
      
      • 将汇编指令翻译成机器指令
    • 链接 (hello.o->a.out)

      • 数据段合并
      • 地址回填

    GCC的一些方法

    参数 作用 案例
    -I 大写的I,可以指定头文件路径 gcc -I ./inc hello.c -o hello
    -o 小写的o,可以将文件直接编译成可以执行文件.exe/.out gcc hello.c -o hello.out
    -c 小写的c,只做预处理,编译,汇编,编译成.o的文件的二进制文件 gcc hello.c -c
    -g 小写的g,编译的时候添加调试文件 gcc hello.c -o hello -g
    -On 大写的O,进行优化需要跟上优化的数值,比如O1,O2,O3,默认是2级,范围是0-3,n的范围越大优化越好 gcc hello.c -o hello -O3
    -Wall Wall,可以提示更多的警告 gcc hello.c -o hello -Wall
    -D 在编译的时候可以指定宏执行,动态注册宏 gcc hello.c -D hello
  • 相关阅读:
    会议总结
    排球比赛积分规则
    我的计算机历程和认识
    排球积分程序
    《如何成为一个高手》观后感
    十八周总结
    十六周总结(流程)
    排球计分程序
    十四周学习总结
    十三周学习总结
  • 原文地址:https://www.cnblogs.com/fandx/p/12518355.html
Copyright © 2011-2022 走看看