首页 > 代码库 > [小技巧] gcc 编译选项-###

[小技巧] gcc 编译选项-###

原文译至:http://elinux.org/GCC_Tips 的一小部分。

-###编译选项用于查看编译的过程
  1. gcc -### <你的命令行的其他部分放在这里> 


你运行的GCC其是一系列工具的集合。通过这个参数,gcc能生成(但并不执行)一系列的命令用于完成你输入的任务。你可以看到在gcc编译下面的细节,什么库会被使用?-mcpu设成什么值?都在输出的结果中。

你可以将输出定向到一个文件并执行这个文件里的命令来编译程序,这样你可以更好地了解gcc是如何调用汇编器和链接器的。
  1. Reading specs from /opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1/specs 
  2. Configured with: ../configure --prefix=/opt/timesys/toolchains/ppc7xx-linux --mandir=/opt/timesys/toolchains/ppc7xx-linux/share/man --infodir=/opt/timesys/toolchains/ppc7xx-linux/share/info --enable-shared --enable-threads=posix --disable-checking --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-languages=c,c++ --with-sysroot=/here/workdir/i386-x-ppc7xx/deleteme --disable-libgcj --build=i686-timesys-linux --host=i686-timesys-linux --target=powerpc-linux --program-prefix=ppc7xx-linux- 
  3. Thread model: posix 
  4. gcc version 3.4.1 20040714 (TimeSys 3.4.1-7) 
  5. /opt/timesys/toolchains/ppc7xx-linux/libexec/gcc/powerpc-linux/3.4.1/cc1 -quiet -v -D__unix__ -D__gnu_linux__ -D__linux__ -Dunix -D__unix -Dlinux -D__linux -Asystem=linux -Asystem=unix -Asystem=posix -I/opt/timesys/toolchains/ppc7xx-linux/powerpc-linux/include/nptl file.c -quiet -dumpbase file.c -auxbase file -version -o /tmp/ccShiHn4.s 
  6. ignoring nonexistent directory "/here/workdir/i386-x-ppc7xx/deleteme/usr/local/include" 
  7. ignoring nonexistent directory "/here/workdir/i386-x-ppc7xx/deleteme/usr/include" 
  8. #include "..." search starts here: 
  9. #include <...> search starts here: 
  10. /opt/timesys/toolchains/ppc7xx-linux/powerpc-linux/include/nptl 
  11. /opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1/include 
  12. /opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1/../../../../powerpc-linux/include 
  13. End of search list. 
  14. GNU C version 3.4.1 20040714 (TimeSys 3.4.1-7) (powerpc-linux) 
  15. compiled by GNU C version 3.2.2 20030222 (Red Hat Linux 3.2.2-5). 
  16. GGC heuristics: --param ggc-min-expand=47 --param ggc-min-heapsize=32138 
  17. /opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1/../../../../powerpc-linux/bin/as -mppc -many -V -Qy -o /tmp/ccWeV3a3.o /tmp/ccShiHn4.s 
  18. GNU assembler version 2.15.90.0.3 (powerpc-linux) using BFD version 2.15.90.0.3 20040415 
  19. /opt/timesys/toolchains/ppc7xx-linux/libexec/gcc/powerpc-linux/3.4.1/collect2 --eh-frame-hdr -V -Qy -L/opt/timesys/toolchains/ppc7xx-linux/powerpc-linux/lib/nptl --rpath-link /opt/timesys/toolchains/ppc7xx-linux/powerpc-linux/lib/tls -m elf32ppclinux -dynamic-linker /lib/ld.so.1 -o file /opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1/../../../../powerpc-linux/lib/crt1.o /opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1/../../../../powerpc-linux/lib/crti.o /opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1/crtbegin.o -L/opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1 -L/opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1/../../../../powerpc-linux/lib /tmp/ccWeV3a3.o -lgcc --as-needed -lgcc_s --no-as-needed -lc -lgcc --as-needed -lgcc_s --no-as-needed /opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1/crtsavres.o /opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1/crtend.o /opt/timesys/toolchains/ppc7xx-linux/lib/gcc/powerpc-linux/3.4.1/../../../../powerpc-linux/lib/crtn.o 
  20. GNU ld version 2.15.90.0.3 20040415 
  21.   Supported emulations: 
  22.    elf32ppclinux 
  23.    elf32ppc 
  24.    elf32ppcsim