1.GCC
大名鼎鼎的GNU的C/C++/Obj-C编译器,当前版本是2.8.1,但据说与2.7.*有兼容性问题. 而使用较广的是gcc2.7.2系列,如RedHat5中带的就是gcc2.7.2.3
有时候在Cyrix上用gcc会有些问题,因此有一套针对Cyrix特点的gcc2.7.2.3
我这里有RedHat5的rpm ftp://166.111.68.98/pub/Warez-CD/Huricane-contrib(Cyrix2.7.2.3&2.8.1)
其基本结构就是一个frontend和backend,
/usr/bin/gcc就是个frontend,其kernel东西都放在/usr/lib/gcc-lib下面,cpp是C预处理器,cc1*的1M多的就是编译器的核心模块了cc1Ccompiler
cc1plusC++compiler
cc1objObject-Ccompiler
但gcc并没有集成Fortran的compiler,一般要用f2c转成C后才用gcc编译好象也还有个g77Fortrancompiler吧?
gcc的不断发展完善使许多commercialcompiler都相形见绌,那当然,gcc/emacs都由GNU创始人RichardStallman手创,是GNU的旗舰产品,质量当然没得说了:-)
由于Unix平台的高度可移植性,gcc几乎在各种常见的Unix平台上都有,即使是Win32/DOS也有gcc的port.比如说该死的Solaris普通版本连compiler都没有,也就只好用gcc了...
2.EGCS(Experimental/EnhancedGNUCompilerSystem)
这是gcc的发展方向,把fortran等编译器集成进来,也许还会有Pascal?它的构造很清晰,把对gcc的各种改进/port都集成回去.如 gcc2.7系列据说是没有对Pentium进行优化的,而egcs则把pgcc对Pentium的一些优化集成进去了现在gcc的开发工作主要就是 egcs,由Cygnus公司领导(?),这Cygnus公司还是很不错的,还出了GNU-Win32,SourceNavigator等,是GNU的坚实拥护者:-))
http://egcs.cygnus.com
包括了C/C++/Obj-C/Fortran编译器,当前最新版本1.0.2,还在不断开发中.昨天download发现KDEBeta4都用egcs编译了:-)
Fortran集成进来后在/usr/lib/gcc-lib下又多了个f771的backend,当然还是g77/f77编译
我这里有egcs1.0.2的rpm在RH5-CD/collect下面
3.PGCC(PentiumGCC)
http://www.gcc.ml.org
针对PentiumCPU进行了编译器优化的compiler
pgcc据说用JPEG压缩解压缩测试最快可比gcc快30%!
新版的pgcc都是基于egcs的,以一个patch的形式releas