GCC使用make文件生成汇编语言输出

GCC使用make文件生成汇编语言输出,gcc,assembly,Gcc,Assembly,我正在尝试为使用配置文件编译的程序生成汇编语言,并将其保存到文件中 我想生成与-S生成的排序输出相同的输出,但不幸的是,这不起作用,因为没有生成输出对象。一般情况如下: make clean make distclean CFLAGS="-O1" ./configure --prefix="a/location/" CFLAGS="-O1" make make install 当CFLAGS还包含“-Wa,-a,-ad,-aln=assembly.lst”时,它会为输出文件生成以下内容:

我正在尝试为使用配置文件编译的程序生成汇编语言,并将其保存到文件中

我想生成与-S生成的排序输出相同的输出,但不幸的是,这不起作用,因为没有生成输出对象。一般情况如下:

make clean
make distclean
CFLAGS="-O1" ./configure --prefix="a/location/"
CFLAGS="-O1" make
make install
当CFLAGS还包含“-Wa,-a,-ad,-aln=assembly.lst”时,它会为输出文件生成以下内容:

   1                    .file   "conftest.c"
   2                    .text
   3                .globl main
   5                main:
   6                .LFB4:
   7                    .cfi_startproc
   8 0000 B8000000      movl    $0, %eax
   8      00
   9 0005 C3            ret
  10                    .cfi_endproc
  11                .LFE4:
  13                    .comm   x,4,4
  14                    .ident  "GCC: (GNU) 4.4.6"
  15                    .section    .note.GNU-stack,"",@progbits
DEFINED SYMBOLS
                            *ABS*:0000000000000000 conftest.c
     /tmp/cc8eyzpq.s:5      .text:0000000000000000 main
                            *COM*:0000000000000004 x
我希望能产生更多,或者我误解了这些标志的作用。同样,我的目标是生成所有优化的代码作为汇编语言,类似于-S选项


谢谢

您看到的是
configure
期间测试运行的汇编代码。您还可以尝试
CFLAGS=-save temps
@Jester如何从实际程序而不是测试运行中获得正确的汇编代码?谢谢假设
configure
为实际生成选择了
CFLAGS
,只需添加
-save temp
就可以了。@Jester我恐怕只能得到相同的输出,assembly.lst包含与上面显示的相同的信息。不要使用
-aln=assembly.lst
,并查找生成的扩展名为
.s
的输出文件(应位于所有源旁边)。