1. 程式人生 > >gcc/g++ 編譯引數

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格式的彙編程式碼