2010.11.16-gcc/g++编译选项

来源:互联网 发布:服务器tcp端口怎么开 编辑:程序博客网 时间:2024/05/21 22:31

       -c

  生成obj的.o文件,不生成可执行文件

  只预处理,编译和汇编,不链接。

  例子:

  gcc -c hello.cpp

  他将生成.o的obj文件

 

  -g

  编译时,产生调试信息可以用于gdb

 

  -o

  生成可执行文件,指定可执行文件名。如果没有,默认为a.out

  例子:

  g++ -o hello hello.cpp

 

  -Wall

  显示所有的Warning

 

  -pg

  可以生成gprof调试的文件

 

  -Dmacro

  相当于C语言中的#define macro

 

  -Dmacro=defn

  相当于C语言中的#define macro=defn

 

  -Umacro

 相当于C语言中的#undef macro

 

  -undef

  取消对任何非标准宏的定义

 

  -IDir

  增加编译时搜寻头文件的路径

 

  -llibrary

  指定编译的时候使用的库

  例子:

  gcc -lcurses hello.c

  使用ncurses库编译程序

 

  -Ldir

  增加编译时搜索库的路径。

 

  -M

  生成文件关联的信息。包含目标文件所依赖的所有源代码。

  例子:

  g++ -M hello.cpp

 

  -MM

  和上面的那个类似,但是忽略由#include<file>造成的依赖关系。

 

  -Olevel

  编译器优化级别。-O0表示没有优化,-O3优化级别最高

 

  -static

  此选项将禁止使用动态库,所以,编译出来的东西,一般都很大,也不需要什么动态连接库,就可以运行.

 

  -shared

  此选项将尽量使用动态库,所以生成文件比较小,但是需要系统由动态库。

 

原创粉丝点击