当前位置:Linux教程 - Linux文化 - Richard Stallman之见 谈Qt采用GPL版权

Richard Stallman之见 谈Qt采用GPL版权


Trolltech 公司将其产品 Qt 改用 GPL 与 QPL 并行的策略,对自由软件界有著莫大的影响,其中以采用 Qt 的 KDE 桌面环境终于『名正言顺』为最。而 GNU 计画中的 GNOME 桌面环境将如何面对这个强大的自由软件『盟友』带来的竞争呢?自由软件之父说出了他的看法:

将 Qt 改以 GPL 释出,使得现存的 GPL 软件使用 Qt 变得合法。它也提供了一个途径解决自由软件社群长久以来僵持的问题 - KDE 的伦理与法律状态的问题。
过去 KDE 的设计有一个错误的基础:使用 Qt 函式库,因为它当时并非自由软件。尽管 KDE 发展者有著良好的理想,尽管 KDE 程序码本身是自由软件,KDE 是永远无法成为一个完整自由的操作系统的一部分,只要它还得依赖非自由的程序来动作。

但 KDE 的开发者并不关心这个问题,而且还募集了同意他们观点人士来协助。当 KDE/Qt 发展时,它就处于对自由软件进步造成持续增加危险的状态。这危险正是当 KDE/Qt 建立到相当程度,使得大多数使用者已视之为不可或缺的工具 - 先不管这即指使用非自由软件。一个决定性的非自由软件获得广大的接受程度,会鼓励一般接受非自由软件的意愿,意思是很少人会想去协助把 KDE/Qt 用其他完全自由的东西来取代。而且这项工作需要很大开始的动力来赶上,就像我们以 GNU 和 GNU/Linux 来取代 UNIX 一般。要回到那种状态是相当令人气馁的景象。

但我们还没走到那一步,很清楚地我们必须采取一些防范措施。在 1997 年我们发起了两个并行的计画来避免这种情形:GNU 桌面环境(GNOME),目标在提供一个完全不同的代替性图形介面。另一个 Harmony,则是 Qt 的自由软件取代品。同时进行两个专案的原因在于:任何计画都可能失败,这危险性够大到必须走两条并行的途径来保证能够避免。

GNOME 流行起来了,到 1999 年那是个明显的成功。然后 Qt 当时改用了新的版权,QPL,让它成为自由软件。那解决了 KDE/Qt 的原则性问题,它的一部分曾是非自由软件。但第二个问题还在:版权不一致的问题。

QPL 和 GPL 并不相容,那表示 Qt 和 GPL 涵盖的模组不能够合法地结合,除非其中之一的模组发展者允许例外。KDE 开发者当然打算让他们的 GPL 程序码利用到 Qt,他们可以辩称将程序码与 Qt 连结已经隐含了许可。但他们并未正式地将此例外情形在 KDE 源代码中描述出来,而依靠类似这样暗中的许可并不令人舒服。

再者,某些情况下,现有的 GPL 程序码版权拥有者并没有给与特殊的许可,其程序码也被 KDE 所采用。(只有版权所有者能给与 GPL 所不允许的额外许可)这是确实违反了 GPL。因为如此,而且整体而言缺乏清楚的例外描述,KDE 的合法状态一直维持『乌云密布』。

Qt 2.2 提供了解决第二个问题的基础,但需要某种程度的整顿才能完全地处理好。错误使用 GPL 软件将永久丧失散布程序码的权力。KDE 里发生了这样的状况,而现在他们应该加以厘清。

有个好主意是 KDE 所有程序码的作者(更精确地说,所有版权持有人)去作出清楚的声明,解释在过去连结 Qt 的程序码已获得他们的允许,所以现存的 KDE 使用者并未丧失散布 KDE 程序码的权利。

另外,从别的 GPL 程序拷贝程序码过来的部份,应取得该版权所有人的谅解。为了抛砖引玉,自由软件基金会在这里保证谅解所有取用所有自由软件基金会所有版权的程序码的行为。更精确地说,在 2000 年九月四日使用自由软件基金会的程序码,却因为将它和 Qt 连结而违反了 GPL,则应当丧失将此程序码以 GPL 散布的权利,却将再次获得使用该程序码的完整 GPL 许可,在切换到 GPL 版本的 Qt 后。我呼吁所有其他与此有关程序码的版权所有人也能保证相同的原谅,以协助快速地解决此状况。

很快地 KDE 将被恰当地建立在 GPL 涵盖的 Qt 版本上,而自由软件运动就能将 KDE/Qt 当成一项贡献,而非问题。同时,我认为没有理由再发展其他类似 Qt 的套件。如果你想要个像 Qt 这样的东西,就用 Qt 吧。

但 GNOME 已经存在了,而且不会走向末路。GNOME 和 KDE 将保持是两个竞争的桌面环境,除非某天他们能以某种方式融合。届时,GNU 计画将会强力地支援它的团队。加油吧,GNOME 小组!

Richard Stallman 的这番话在 LinuxToday 上引起了激烈的讨论,各位的想法呢?稍后编者将为各位报导 KDE 小组对此的回应。

全文出处:
http://linuxtoday.com


摘自:http://linuxfab.cx