RMS 谈 GCC、LLVM 和 Copyleft

ESR(Eric S.Raymond)在GCC邮件列表上发贴预言,LLVM/Clang编译器将在3到5年内威胁到GCC的统治地位,认为GCC编译器的反插件政策正成为一大障碍。虽然Clang尚未达到GCC的成熟度,但在某些方面它拥有比GCC更出色的特性,例如错误信息。ESR建议GCC应允许非自由的插件。帖子在邮件列表上引发了有关GCC和Clang的热烈讨论。自由软件基金会主席、GCC原作者RMS(Richard Stallman)回应称, 非自由的软件是一种非正义,我们的目标是消灭非正义,给予计算机用户自由。他指出,LLVM的许可协议对自由软件社区而言是一个可怕的挫折。他认 为,GCC为了要赢得与Clang的编译器之战而允许非自由插件,那么即使胜利也将是空洞的,因为胜利无关乎真正重要的东西:用户的自由。

文章转载自 开源中国社区 [http://www.oschina.net]

时间: 2024-11-02 07:06:59

RMS 谈 GCC、LLVM 和 Copyleft的相关文章

RMS 谈自由软件运动和后门

在 MIT Scala 中心举办的自由软件运动30周年活动上,自由软件基金会(FSF)创始人 Richard Stallman(RMS) 首先警告不要将拍的照片放到 Facebook 或 Instagram 上,因为它们都是巨大的监视引擎,你上传照片是帮助监视拍照对象:不要将录音或视频上传到 Youtube,因为它使用 Flash.RMS 说,自由软件运动30年来,情况有了很大改观,我们有了 GNU+Linux,电脑运行的软件能几乎全部是自由软件.然而问题是,绝大多数人都使用私有系统,我们有更多

LLVM每日谈之六 LLVM的源码结构

 作者:snsn1984 这里简单介绍下LLVM的源码结构,让大家知道LLVM的每个文件夹都放的是什么内容. 参考文档: http://llvm.org/docs/GettingStarted.html#getting-started llvm/examples 这个目录主要是一些简单例子,演示如何使用LLVM IR 和 JIT.还有建立一个简单的编译器的例子的代码. 建立简单编译器的文档地址:http://llvm.org/docs/tutorial/ llvm/include 这个目录主要包

使用Emacs:帮助篇

当你打开emacs并认真阅读"快速指南"后,你已经知道用C-x C-f打开文件,用C-x C-s保存文件,用C-x C-c退出emacs,可以在emacs中生存了.这里把Tutorial.cn中出现的命令整理如下以便查看: C-<chr>:Control键 M-<chr>:Meta(Alt)键 C-v:向下移一屏幕 M-v:向上移一屏幕 C-l:重新绘制,让光标所在行处于屏幕中央 C-p:光标移到上一行(previous line) C-n:光标移到上一行(ne

LLVM每日谈之七 Clang

作者:snsn1984         官方介绍Clang是LLVM native的一个面向C/C++/Objective-C的编译器,目标是要提供一个编译非常快的编译器.他们宣称在Debug模式下编译Objective-C比GCC快3倍.至于是否能比GCC快这么多,总有人去做对比,大家可以搜索下,好像确实快了些. Clang一般被说是LLVM的一个前端.关于前端的定义,大家可以从LLVM每日谈之二里面看到前端在整个LLVM体系中的位置.Clang当初的定位就是要做下一个十年中一个伟大的前端,这

[原创]浅谈如何使用gcc开发NT核心驱动程序

 [原创]浅谈如何使用gcc开发NT核心驱动程序       一谈到在 Win NT 下开发核心驱动程序,可能不少人首先都会想到微软"正统" 的VC来.诚然,用VC 配合 WINDDK 的确工作的不错,但或许我们可以让其变 得更简单更完善一些.     其实偶一般是用 Masm32v9 + EditPlus2 编写 NT内核驱动,仅此而已. 从环境搭建的便捷性和编写代码的灵活性来说无疑这是非常高的.但汇编 终归是汇编,虽然强大,但很多事都要自己动手来做,往往很简单的功能都 要用比较&q

LLVM每日谈之十六 LLVM的学习感悟

这些总结并非我自己写的,而是摘自LLVM的版本比较老的文档中.因为老版本的文档已经鲜有人关注了,而这篇总结的非常好,到现在也很有用处,所以就把这部分内容贴出来了.这只是原文档的一部分. 原文档地址:http://llvm.org/releases/1.1/docs/Stacker.html 正文内容: Lessons I Learned About LLVM Everything's a Value! Although I knew that LLVM uses a Single Static

LLVM每日谈之十三 使用LLVM自带的PASS

作者:snsn1984 PS:最近一段时间,投入在LLVM上的时间有些减少.差点把对它的研究断掉,今天开始继续.对LLVM的研究需要很长一段时间的坚持不懈才可以彻底搞明白. 前面已经介绍过如何写自己的PASS,并且也针对一个简单的PASS进行了分析和介绍.相信大家也可以从LLVM源码中找到很多的PASS,这些PASS太多,他们每个到底是做什么用?如何去调用这些系统已经有的PASS?这就是这次每日谈要关注的问题. 在文档 http://llvm.org/docs/Passes.html 中,列出了

LLVM每日谈之四 Pass初探

作者:snsn1984 LLVM 的Pass框架是LLVM系统的一个很重要的部分.每个Pass都是做优化或者转变的工作,LLVM的优化和转换工作就是由很多个Pass来一起完成的. 所以按照我的理解,Pass就是LLVM系统转化和优化的工作的一个节点,每个节点做一些工作,这些工作加起来就构成了LLVM整个系统的优化和转化.Pass架构这么做的话,可重用性非常好,你可以选择已有的一些Pass,自己去构建出自己想要的优化和转化效果.并且自己也可以重新写Pass去做自己想要的优化和转变,因为每个Pass

LLVM每日谈之二十三 LLVM/Clang编译Linux内核资料

作者:史宁宁(snsn1984) 之前有朋友问到这个问题,是否有使用LLVM/Clang编译Linux内核的,随手找了一些相关资料,在这里贴出来,与大家共享. 网址:http://llvm.linuxfoundation.org 项目简介: LLVMLinux Project Overview This project aims to fully build the Linux kernel using Clang which is the C front end for the LLVM co