gcc/g++ 编译参数

Posted xiaoshiwang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gcc/g++ 编译参数相关的知识,希望对你有一定的参考价值。

1, -E(大写),预处理

  • 例子:gcc -E test.cpp -o test.i
  • 预处理,把程序里的#开头的替换掉,比如#include,然后生成test.i

2,-P(大写),去掉预处理生成的杂乱信息

  • -E后生成的文件里面有很多杂乱的信息,用-P可以去掉杂乱的信息。

3,-S(大写),生成汇编文件

  • -masm=att 生成AT&T格式的汇编文件
  • -masm=intel 生成intel格式的汇编文件

4,-c(小写),只编译不链接,生成二进制文件

  • 把生成的二进制文件再转回汇编代码的方法:objdump -D main.o
  • objdump -M intel 和 objdump -M att,分别生成intel格式的汇编代码和AT&T格式的汇编代码

以上是关于gcc/g++ 编译参数的主要内容,如果未能解决你的问题,请参考以下文章

gcc/g++命令参数

gcc/g++编译(生动形象,从最容易入手的hello world解释了库的概念)

gcc/g++ 实战之编译过程

用 gcc/g++ 编译器编译 c++

gcc/g++ 实战之编译的四个过程

cmake 如何编译成debug版?