zzh1234567 发表于 2005-12-13 14:50:10

我有一个非常简单但是却折磨了我很久的关于GPL开源的问题.

关于GPL开源,我一直都不明白一个事情.

如果一个大系统A,其中有一个部件B,这个部件是基于一个GPL开源的C进行改进的.

请问: 按照GPL的规定, 是否因为使用到C, 这个系统A的所有源代码都需要公开呢? 尽管B只是A的其中一个小部件呢??


我始终没有明白这个问题,请教高手....


[email protected]

:oops:

freedn 发表于 2005-12-13 15:31:17

A的源码中除B以外的部分可以不用开源,但B的源码必须按GPL公开。

zzh1234567 发表于 2005-12-13 17:36:08

哦, 这样.谢谢.

但是如何来确定这个边界呢. 特别是如果B不是一个很独立的运行程序,它和A有一定耦合性的话,那么这个公开代码边界就不好确定了. 是吧?

比如: GAIM是GPL开源的.我现在根据GAIM的代码开发了一个图象组件,放在一个平台上,这个平台可以调用调用这个图象组件. 这个时候,确定哪些要公开哪些不要公开应该是有比较麻烦了. 不知道确定公开代码的边界有没有什么可供查考的资料呢?

freedn 发表于 2005-12-13 18:33:21

按你上面的这个例子,你的这个图象组件也必须要按照GPL协议开放源代码

"根据GAIM的代码开发"这一句就是法律依据。

基于gpl协议的软件源代码开发的任何软件也都必须要基于GPL协议发布。

dxafei 发表于 2005-12-15 17:14:38

老实说,比起GPL,我更喜欢SUN的开源所遵循的CDDL(通用开发和发布许可)协议,但是GPL协议也有其存在的价值,它直接推动了开源这个软件开发新文化的发展,当然,Linux也是它的一个重要成果。

dxafei 发表于 2005-12-15 17:15:02

老实说,比起GPL,我更喜欢SUN的开源所遵循的CDDL(通用开发和发布许可)协议,但是GPL协议也有其存在的价值,它直接推动了开源这个软件开发新文化的发展,当然,Linux也是它的一个重要成果。

dxafei 发表于 2005-12-15 17:15:35

受不了,竟然发了两遍。

VirusCamp 发表于 2005-12-17 16:51:26

B必须是GPL的开源,
但A,开不开源要看B是什么,
如果B是一个exe,A就无所谓
如果B是一个dll,so,A也得是GPL
B编译进了A,A更得GPL了.

如果C用的是LGPL,B也是LGPL,这是如果B是dll,so的话,A就无所谓.
页: [1]
查看完整版本: 我有一个非常简单但是却折磨了我很久的关于GPL开源的问题.