GNU及开源

麻省理工的Richard Stallman于1984年,创建GNU(GNU IS NOT UNIX,因为当时UINX是收费的)组织,这个组织中黑客云集,而且多是掌握核心技术的真正高手,他们的作品多是编译器、词法/语法分析器、底层函数库等大作。该组织以“思想共享,源码共享”作为宗旨。1985年创建了FSF(自由软件基金会),1991年公布了GPL2.0版(General Public License,普遍公用许可)。GNU 工程 开始於1984年,旨在发展一个 类-Unix 且为自由软件的完整操作系统----HURD,但是因为种种原因进度非常慢。这时候,一个荷兰黑客制作出了Linux,并宣布:遵循GPL版权可协议。Linux的发展非常快,他本身遵循GPL版权可协议,同时又把GNU的很多软件集成了进去(注意,Linux仅仅是一个内核,不包含外围的应用程序),所以现在我们使用的Linux系统,应该完整地称之为GNU/Linux才对。真正的linux只是一个系统核心,而各种linux发行版所带的软件多数都是GNU提供的,包括相当重要的系统软件,比如C语言编译器,shell等。在该过程中,该组织开发了很多有名的重要的系统软件,比如C语言编译器等。
GNU工程并不限于操作系统。“我们的目标是提供所有类型的软件”,GNU包含超过15000个软件包,以及很多基于这些软件包所开发的软件变体。如:Emacs编辑器是最受欢迎、传播范围最广、也是最强大和最灵活的UNIX文本编辑器。与其他文本编辑器的重要区别在于它是一个完备的工作环境,使用Emacs可以完成各种日常工作。对很多Emacs用户来说,Emacs已经超越了编辑器的范畴,可以做很多工作,甚至可以作为简单的编程工具使用。使用Emacs是一种文化,一种生活。1991年,Lucid公司的Jamie Zawinski等人以GNU Emacs 19的一个早期alpha版为基础,添加了一些新的特性,开发出Lucid Emacs。很快,Lucid Emacs的开发与GNU Emacs渐行渐远,最终双方的团队放弃了将两者合并的努力。Lucid Emacs被重新命名为XEmacs,它不像GNU Emacs那样要求严格的代码授权,因此能够吸纳大量的优秀扩展,在很多方面比GNU Emacs更为优秀。到目前为止,两者都是众多Emacs类编辑器中最受欢迎的选择。

  还有GCC(GNU Compiler Collection)作为自由软件的旗舰项目,GCC是一个功能强大、性能优越的多平台编译器,是GNU的代表作品之一。Gcc是可以在多种硬体平台上编译出可执行程序的超级编译器,其执行效率与一般的编译器相比平均效率要高20%~30%。
Richard Stallman 在十多年前刚开始写作 GCC 的时候,还只是把它当作仅仅一个 C 程序语言的编译器;GCC 的意思也只是 GNU C Compiler 而已。经过了这么多年的发展,GCC 已经不仅仅能支持 C 语言;它现在还支持 Ada 语言、C++ 语言、Java 语言、Objective C 语言、Pascal 语言、COBOL语言,以及支持函数式编程和逻辑编程的 Mercury 语言,等等。而 GCC 也不再单只是 GNU C 语言编译器的意思了,1999年4月,变成了GNU Compiler Collection 也即是 GNU 编译器家族的意思了。其中C++编译器G++,更好地支持C++标准。有关GCC的更多参考,查阅http://www.csdn.net/subject/gcc/(很不错的一篇文章)。

你可能感兴趣的:(c,gcc,语言,emacs,compiler,编译器,objective)