文档介绍:gcc 中文手册 GCC 中文手册作者:徐明 GCC Section: GNU Tools (1) Updated: 2003/12/05 Index Return to Main Contents ----------------------------------------------------------- ------------- -------- NAME gcc,g++-GNU 工程的 C和 C++ 编译器(egcs-) 总览(SYNOPSIS) gcc[option|filename ]... g++[option|filename ]... 警告(WARNING) 本手册页内容摘自 GNU C 编译器的完整文档, 仅限于解释选项的含义. 除非有人自愿维护, 否则本手册页不再更新. 如果发现手册页和软件之间有所矛盾,请查对 Info 文件, Info 文件是权威文档. 如果我们发觉本手册页的内容由于过时而导致明显的混乱和抱怨时, 我们就停止发布它. 不可能有其他选择, 象更新 Info 文件同时更新 man 手册, 因为其他维护 的工作没有留给我们时间做这个. GNU 工程认为 man 手册是过时产物,应该把时间用到别的地方. 如果需要完整和最新的文档, 请查阅 Info 文件`gcc' 或 Using and Porting ( for version ) ( 使用和移植 ) 手册. 二者均来自 Texinfo 原文件 gcc texinfo. 描述(DESCRIPTION) C和 C++ 编译器是集成的. 他们都要用四个步骤中的一个或多个处理输入文件: 预处理(preprocessing), 编译(compilation), 汇编(assembly) 和连接(linking). 源文件后缀名标识源文件的语言, 但是对编译器来说, 后缀名控制着缺省设定: gcc 认为预处理后的文件(.i) 是C 文件, 并且设定 C 形式的连接. g++ 认为预处理后的文件(.i) 是 C++ 文件, 并且设定 C++ 形式的连接. 源文件后缀名指出语言种类以及后期的操作: cC 源程序; 预处理, 编译, 汇编 C C++ 源程序; 预处理, 编译, C++ 源程序; 预处理, 编译, 汇编 cxx C++ 源程序; 预处理, 编译, 汇编 m Objective-C 源程序; 预处理, 编译, 汇编 i 预处理后的 C 文件; 编译, 汇编 ii 预处理后的 C++ 文件; 编译, 汇编 s 汇编语言源程序; 汇编 S 汇编语言源程序; 预处理, 汇编 h 预处理器文件; 通常不出现在命令行上其他后缀名的文件被传递给连接器(linker). 通常包括: o 目标文件(Object file) a 归档库文件(Archive file) 除非使用了-c, -S, 或-E 选项( 或者编译错误阻止了完整的过程),否则连接总是最后的步骤. 在连接阶段中, 文件, -l 库文件,无法识别的文件名( 库文件) 按命令行中的顺序传递给连接器. 选项(OPTIONS) 选项必须分立给出: `-dr' 完全不同于`-d -r '. 大多数`-f' 和`-W' 选项有两个相反的格式: -fnam e和-fno-name (或-Wname 和-Wno -name). 这里只列举不是默认选项的格式. 下面是所有选项的摘要, 按类型分组, 解释放在后面的章节中. 总体选项(Overall Option) -c -S -E -o file -pipe -v -x language 语言选项(Language Option) -ansi -fall-virtual -fcond-mismatch -fdollars-in-identifiers -fenum-int- equiv -fexternal-templates -fno-asm -fno-builtin -fhosted -fno-hosted -f freestanding -fno-freestanding -fno-strict-prototype -fsigned-bitfields -fsigned-char -fthis-is-variable -funsigned-bitfields -funsigned-char -f writable-strings -traditional -traditional-cpp -trigraphs 警告选项(Warning Option) -fsyntax-only -pedantic -pedantic-errors -w -W -Wall -Wagg