|
|
发表于 2005-3-27 15:21:54
|
显示全部楼层
Post by abby
用QT来做例子确实不合适,它对不同使用者用不同版权协议。
但就GPL版权协议的条款,没有一条禁止别人编写专有软件。可能有比较模糊的句子令人费神,第二条中"your work based on the Program",中文翻译“你的基于程序的作品”,让人看上几十遍才罢休。
到底指那种作品?依赖这个程序的作品?还是取了人家部分代码用在自己作品的一部分的?
我觉得单单指后者,后面有段文字说明了,转贴中文翻译:
“
这些要求适用于修改了的作品的整体。如果能够确定作品的一部分并非程序的衍生产品,可以合理地认为这部分是独立的,是不同的作品。当你将它作为独立作品发布时,它不受此许可证和它的条款的约束。但是当你将这部分作为基于程序的作品的一部分发布时,作为整体它将受到许可证条款约束。准予其他许可证持有人的使用范围扩大到整个产品。也就是每个部分,不管它是谁写的。因此,本条款的意图不在于索取权利;或剥夺全部由你写成的作品的权利。而是履行权利来控制基于程序的集体作品或衍生作品的发布。
”
最直接的例子是NVIDIA驱动程序,它也需要linux内核的一些头文件做编译,一种依赖关系,完全可以使用另一种协议发布。
CuteDict如果没有使用stardict的某部分代码,就是说跟stardict没有什么关系了,只不过是它的仿制品而且可以使用它的词库,于是就可以用其他协议发布。
的确,因为CuteDict是用QT自由版本开发的,所以他必须以GPL发布,如果是用商业版本的QT开发的,就没有这个问题,至于libdict,因为现在linuxfans上不去了,我记忆中他应该是用LGPL(正宗的)授权吧,一般库文件都是这个授权,如果是这个,cutedict用什么授权就没有关系了,可是如果是GPL的,cutedict必须是GPL的,因为很明显的,cutedict不是一个独立的作品,没有libdict的话,不可能有cutedict的。
补充:LGPL要求必须用动态链接的方式,如果用了静态链接就不行了。 |
|