GCC 常用命令
GCC(GNU Compiler Collection,GNU编译器套装)是一套由GNU工程开发的支持多种编程语言的编译器。GCC是自由软件发展过程中的著名例子,由自由软件基金会以GPL协议发布。GCC是大多数类Unix操作系统(如Linux、BSD、Mac OS X等)的标准的编译器,GCC同样适用于微软的Windows。GCC支持多种计算机体系芯片,如x86、ARM,并已移植到其他多种硬件平台。GCC原名为GNU C编译器(GNU C Compiler),因为它原本只能处理C语言。GCC很快地扩展,并支持处理C++。后来又扩展能够支持更多编程语言,如Fortran、Pascal、Objective-C、Java、Ada、Go等。
操作方法
- 01
-o FILE 指定输出文件名,在编译为目标代码时,这一选项不是必须的。如果FILE没有指定,缺省文件名是a.out.-c 只编译不链接-DFOO=BAR 在命令行定义预处理宏FOO,其值为BAR
- 02
-IDIRNAME 将DIRNAME加入到头文件的搜索目录列表中-LDIRNAME 将DIRNAME加入到库文件的搜索目录列表中,缺省情况下gcc 只链接共享库-static 链接静态库,即执行静态链接
- 03
-lFOO 链接名为libFOO的函数库-g 在可执行程序中包含标准调试信息-ggdb 在可执行程序中包含只有GNU debugger才能使别的达两条是信息
- 04
-O 优化编译过的代码 -ON 指定代码优化的级别为N,o<=N<=3 -ansi 支持ANSI/ISO C的标准语法,取消GNU的语法扩展中与该标准有冲突的部分 (但这一选项并不能保证生成ANSI兼容的代码) -pedantic 允许发出ANSI/ISO C标准所列出的所有警告
- 05
-c 只编译不链接-DFOO=BAR 在命令行定义预处理宏FOO,其值为BAR-IDIRNAME 将DIRNAME加入到头文件的搜索目录列表中-LDIRNAME 将DIRNAME加入到库文件的搜索目录列表中,缺省情况下gcc 只链接共享库-static 链接静态库,即执行静态链接-lFOO 链接名为libFOO的函数库-g 在可执行程序中包含标准调试信息-ggdb 在可执行程序中包含只有GNU debugger才能使别的达两条是信息-O 优化编译过的代码-ON 指定代码优化的级别为N,o<=N<=3-ansi 支持ANSI/ISO C的标准语法,取消GNU的语法扩展中与该标准有冲突的部分(但这一选项并不能保证生成ANSI兼容的代码)-pedantic 允许发出ANSI/ISO C标准所列出的所有警告-pedantic -errors 允许发出ANSI/ISO C标准所列出的所有错误-traditional 支持Kernighan & Ritchie C语法(如用旧式语法定义函数);如果不知道这个选项的含义,也没有关系-w 关闭所有警告,建议不要使用此项.Wall 允许发出gcc能提供的所有有用的警告,也可以用-W(warning)来标记指定的警告-werror 把所有警告转换为错误,以在警告发生时中止编译过程 -MM 输出一个make兼容的相关列表-v 显示在编译过程的每一步中用到的命令