1 / 90
文档名称:

gcc中文参考大全.doc

格式:doc   页数:90页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

gcc中文参考大全.doc

上传人:sanshengyuanting 2016/7/27 文件大小:0 KB

下载得到文件列表

gcc中文参考大全.doc

相关文档

文档介绍

文档介绍:GCC 技术参考大全 GCC ( piler Collection , GNU 编译程序集合)是最重要的开放源码软件。事实上,其他所有开放源码软件都在某种层次上依赖于它。甚至其他语言,例如 Perl 和 Python ,都是由 C 语言开发的,由 GNU 编译程序编译的。 GCC 编译程序的历史很有趣, 远远不止是一个时间和事件的列表。这个软件对于整个自由软件运动而言具有根本性的意义。事实上, 如果没有它或类似的软件, 就不可能有自由软件运动。 GCC 为 Linux 的出现提供了可能性。本章概要介绍了 GCC 编译程序集合,以及它的相关工具。这些编译中使用的工具可以跟踪源代码、编辑文件、控制编译过程、提供调试信息。本章介绍的内容包括一个列表以及对处理过程的一些描述。该列表描述了组成编译程序集合的文件和程序。之后介绍了将源文件变成可连接和可执行程序的步骤。 GNU GCC 是 GNU 项目的一个产品。该项目始于 1984 年, 目标是以自由软件的形式开发一个完整的类 UNIX 的操作系统。像所有这种规模的软件一样, GNU 项目也经历了一些波折, 但目标最终还是实现了。实际上现在一个功能完备的类 UNIX 操作系统—— Linux , 已经在世界上广为流传了, 并被不计其数的公司、政府和个人成功应用。而该系统及其所有工具和应用都是基于 GCC 的。可用于 Linux 以及其他系统的自由软件的范围很广泛,并且还在日益增长。作为整体 GNU 项目的一部分而开发的免费 UNIX 被列在 ectory 中的自由软件目录( Free Software Directory )中。成千上万的程序员都在为各种 GNU 项目(及其他自由软件项目)作贡献,而实际上所有这些都在某种程度上依赖于 GCC 。 测量编译程序我们可以在编译的速度、生成代码的速度,以及生成代码的尺寸上对编译程序进行比较。但是很难进行更深入的比较,因为虽然可以得出一些数字,却很难对这些数字赋予某种实际意义。例如, 源文件的数目( make 程序的描述文件、配置文件、头文件、可执行代码, 等等) 显示共有超过 15 000 个的各种文件。源文件编译成的目标文件、库和可执行程序的数目成千增长。代码的行数(这 15 000 多个文件的行数) 超过 3 700 000 。从任何标准来看,这都是一个大程序。代码的质量参差不齐——因为有如此之多的程序员参与开发过程,而且代码注释中也内嵌了大量的内部文档, 所以文档的质量和数量也有变化。所幸的是, 有大量的程序员正在努力地提高代码和注释的质量。而且,也不是必须阅读内嵌的注释才能使用编译程序。但如果要对编译程序做些工作,你会发现还是要花些时间阅读代码中内嵌的注释。测量编译程序的质量的惟一方法是询问它的用户。全世界的用户数目很难估计(自由软件就有这样的特性) ,但一定是巨大的。它被用于某些版本的 UNIX ,这些 UNIX 自带系统供应商提供的本地编译程序。事实上,我知道一个很大的 UNIX 供应商就在自己内部的项目中使用 GCC ,即便该供应商也有自己的很优秀的编译程序。 GCC 编译程序从未停止过改进。如同第 2 章所描述的,通过下载某个特定版本的源代码便可安装已经发布的某个版本的 GCC ,也可以直接下载最新的(或测试中的)版本。测试中的版本时刻都在改进。有些更正是修改已有的 bug ,还有一些是为了加入新的语言和功能,还有一些是为了去掉某些不再应用的功能。如果你曾经使用过 GCC ,隔一段时间再用最新版,一定会发现一些变化。 命令行选项每个命令行选项都以一个或一对连字号开始。例如, 下面的命令行会编译 ANSI 标准 C程序 ,再产生一个非连接的目标文件 : gcc -ansi -c -o 这些单字母选项后面跟着的名字可以和字母之间留有空格。例如,选项- 和-o 是一样的。下面的命令用-v 代表详细说明,而--help 会打印可用的选项,而且会打印一个详细的包括所有命令行选项的列表,包括那些适用于特定语言的选项。 gcc -v --help 有可能构造一些实际不做任何事情的命令行。例如,下面的命令将目标文件交给编译程序, 然后指定-c 选项防止激活连接程序: gcc -c 所有的命令行选项大致可分为三类: · 指定语言 GCC 编译程序有能力编译多种语言,有些选项只可用于其中的一两种。例如, -C89 选项只应用于 C 语言,指定适用于 1989 年的标准。· 指定平台 GCC 编译程序可以为多种平台生成目标代码, 而有些选项只能应用于为某个指定平台生成代码。例如,如果输出平台是 Intel 386