没有公告
GCC 使用指南 使用语法: gcc [ option | filename ]... g [ option | filename ]... 其中 option 为 gcc 使用时的选项(后面会再详述), 而 filename 为欲以 gcc 处理的文件 说明: 这 C 与 C 的 compiler 已将产生新程序的相关程序整合起来。产 生一个新的程序需要经过四个阶段:预处理、编译、汇编、连结,而这两 个编译器都能将输入的文件做不同阶段的处理。虽然原始程序的扩展名可 用来分辨编写原始程序码所用的语言,但不同的compiler,其预设的处理 程序却各不相同: gcc 预设经由预处理过(扩展名为.i)的文件为 C 语言,并於程式 连结阶段以 C 的连结方式处理。 g 预设经由预处理过(扩展名为.i)的文件为 C 语言,并於程序连结阶段以 C 的连结方式处理。 原始程序码的扩展名指出所用编写程序所用的语言,以及相对应的处理方法: .c C 原始程序 ; 预处理、编译、汇编 .C C 原始程序 ; 预处理、编译、汇编 .cc C 原始程序 ; 预处理、编译、汇编 .cxx C 原始程序 ; 预处理、编译、汇编 .m Objective-C 原始程序 ; 预处理、编译、汇编 .i 已经过预处理之 C 原始程序 ; 编译、汇编 .ii 已经过预处理之 C 原始程序 ; 编译、汇编 .s 组合语言原始程序 ; 汇编 .S 组合语言原始程序 ; 预处理、汇编 .h 预处理文件(标头文件) ; (不常出现在指令行) 其他扩展名的文件是由连结程序来处理,通常有: .o Object file .a Archive file 除非编译过程出现错误,否则 "连结" 一定是产生一个新程序的最 後阶段。然而你也可以以 -c、-s 或 -E 等选项,将整个过程自四 个阶段中的其中一个停止。在连结阶段,所有与原始码相对应的 .o 文件、程序库、和其他无法自文件名辨明属性的文件(包括不以 .o 为扩展名的 object file 以及扩展名为 .a 的 archive file)都会 交由连结程序来处理(在指令行将那些文件当作连结程序的参数传给 连结程序)。 选项: 不同的选项必须分开来下:例如 `-dr' 这个选项就与 `-d -r' 大 不相同。 绝大部份的 `-f' 及 `-W' 选项都有正反两种形式:-fname 及 -fno-name (或 -Wname 及 -Wno-name)。以下只列出非预设的那个 形式。 以下是所有选项的摘要。以形式来分类。选项的意义将另辟小节说 明。 一般性(概略、常用的)选项 -c -S -E -o file -pipe -v -x language 程序语言选项 -ansi -fall-virtual -fcond-mismatch -fdollars-in-identifiers -fenum-int-equiv -fexternal-templates -fno-asm -fno-builtin -fno-strict-prototype -fsigned-bitfields -fsigned-char -fthis-is-variable -funsigned-bitfields -funsigned-char -fwritable-strings -traditional -traditional-cpp -trigraphs 编译时的警告选项 -fsyntax-only -pedantic -pedantic-errors -w -W -Wall -Waggregate-return -Wcast-align -Wcast-qual -Wchar-subscript -Wcomment -Wconversion -Wenum-clash -Werror -Wformat -Wid-clash-len -Wimplicit -Winline -Wmissing-prototypes -Wmissing-declarations -Wnested-externs -Wno-import -Wparentheses -Wpointer-arith -Wredundant-decls -Wreturn-type -Wshadow -Wstrict-prototypes -Wswitch -Wtemplate-debugging -Wtraditional -Wtrigraphs -Wuninitialized -Wunused -Wwrite-strings 除错选项 -a -dletters -fpretend-float -g -glevel -gcoff -gxcoff -gxcoff -gdwarf -gdwarf -gstabs -gstabs -ggdb -p -pg -save-temps -print-file-name=library -print-libgcc-file-name -print-prog-name=program 最佳化选项 -fcaller-saves -fcse-follow-jumps -fcse-skip-blocks -fdelayed-branch -felide-constructors -fexpensive-optimizations -ffast-math -ffloat-store ?br />
[1] [2] [3] [4] [5] 下一页