如何使用GCC将多个.c文件编译成一个.s文件

如果我们有多个源文件,想要把他们编译成一个.s文件,有正向反向两种方法,

1.反向很简单,就正常编译成可执行,然后使用objdump反汇编即可:

objdump -d mcf_s &> mcf_s.s

2.正向直接编译使用如下的命令是不行的:

如何使用GCC将多个.c文件编译成一个.s文件_第1张图片

 

需要先写一个单独的.c文件,然后将项目需要的所有的.c文件包含进去,如下图:

 

如何使用GCC将多个.c文件编译成一个.s文件_第2张图片

然后使用如下的命令编译这个新的.c文件就可以了

gcc -std=c99 -m64 -S -DSPEC -DNDEBUG -Ispec_qsort -DSPEC_AUTO_SUPPRESS_OPENMP -O3 -ffinite-math-only -fprefetch-loop-arrays -ffast-math -mno-avx2 -march=znver1 -Wno-return-type -fno-strict-aliasing -DSPEC_LP64 mcf_test.c -o mcf_test.s

 

 

你可能感兴趣的:(GCC)