星期三, 十二月 12, 2007

gcc的组件和软件工具

gcc安装的各个部分
 部分            描述
c++        gcc的一个版本,默认语言设置为c++,而且在连续的时候自动包含标准c++库。这和g++一样
ccl        实际的c编译程序
cclplus        实际的c
++编译程序
collect2               在不使用GNU链接程序的系统上,有必要运行collect2来产生特定的全局初始化代码
(例如c++的构造函数和析构函数)
configure               GCC源代码树根目录中的一个脚本,用于设置值和创建GCC编译程序必须的make程序的描述文件
crt0
.o        这个初始化和结束代码是为每个系统定制的,而且也被编译进该文件,该文件然后会被连接到每个可执行文件中来执行必要的启动和终止程序。
cygwinl
.dll    windows的共享库提供的API,模拟UNIX系统调用。
f77        该驱动程序可用于编译Fortran
f77l        实际的Fortran编译程序。
g
++        gcc的一个版本,默认语言设置为c++,而且在链接的时候自动包含标准c++库,这和c++一样
gcc        该驱动程序等同于执行编译程序和链接程序以产生必要的输出
gcj        该驱动程序用于编译java
gnatl        实际的Ada编译程序
gnatbind               一种工具,用于执行Ada语言的绑定
gnatlink               一种工具,用于执行Ada语言的绑定
jcl        实际的java编译程序
libgcc        该库包含的例程被作为编译程序的一部分,是因为它们可被链接到实际的可执行程序中。它们是特殊的例程,链接到可执行程序,来执行基本的任务,例如浮点运算。这些库中的例程通常都是平台相关的。
libgcj        运行时库包含所有的核心Java类
libobjc        对所有Objective
-c程序都必须的运行时的库。
libstdc
++               运行时库,包括定义为标准语言一部分的所有的c++类和函数                
                    
[b]gcc使用的工具[/b
[
b工具    [/b]     [b说明[/b
addr2line               给出一个可执行文件的内部地址,addr2line使用文件中的调试信息将地址翻译成源代码文件名和行号。该程序是binutils包的一部分
ar        这是一个程序,可通过从文档中增加、删除和析取文件来维护库文件。通常使用该工具是为了创建和管理链接程序使用的目标库文档。该程序是binutils包的一部分。
as        GNU汇编器。实际上他是一组汇编器,因为它可以被编译或能够在各个不同平台上工作。
autoconf              产生的shell脚本自动配置源代码包去编译某个特定版本的UNIX
c
++filt        程序接受被c++编译程序转换过的名字(不是被重载的),而且将该名字翻译成初始形式。该程序是binutils包的一部分
f2c        是Fortran到c的翻译程序。不是GCC的一部分。
gcov        gprof使用的配置工具,用来确定程序运行的时候哪一部分耗时最大
gdb        GNU调试器,可用于检查程序运行时的值和行为
GNATS        GNU的调试跟踪系统
(GNU Bug Tracking System)。一个跟踪GCC和其他GNU软件问题的在线系统。
gprof        该程序会监督编译程序的执行过程,并报告程序中各个函数的运行时间,可以根据所提供的配置文件来优化程序。该程序是binutils包的一部分。
ld        GNU链接程序。该程序将目标文件的集合组合成可执行程序。该程序是binutils包的一部分。
libtool        一个基本库,支持make程序的描述文件使用的简化共享库用法的脚本。
make        一个工具程序,它会读makefile脚本来确定程序中的那个部分需要编译和链接,然后发布必要的命令。它读出的脚本
(叫做makefile或Makefile)定义了文件关系和依赖关系。
nlmconv        将可重定向的目标文件转换成NetWare可加载模块
(NetWare Loadable Module NLM)。该程序是binutils包的一部分。
nm        列出目标文件中定义的符号,该程序是binutils包的一部分。
objcopy        将目标文件从一种二进制格式复制或翻译到另外一种。该程序是binutils包的一部分
objdump        显示一个或多个目标文件中保存的多种不同信息
.该程序是binutils包的一部分。
ranlib        创建的添加到ar文档的索引。该索引被ld使用来定位库中的模块。        该程序是binutils包的一部分。
ratfor        Ratfor预处理程序可由GCC激活,但不是标准GCC发布版的一部分。
size        列出目标文件中每个部分的名字和尺寸。该程序是binutils的一部分。
strings        浏览所有类型的文件,析取出用于显示调试所需的信息。        该程序binutils包的一部分。
veg        Ratfor浏览器从文本中读取信息,并以图标形式显示它们。而vcg工具并不是GCC发布的一部分,但
-dv选项可被用来产生vcg可以理解的优化数据的格式
windres        window资源文件编译程序,该程序是binutils包的一部

0 意見: