简单的来说,就是你可以“合理使用” GPL库, 但是不能包含在你的软件里分发,除非你的软件是GPL的。
也就是说,你只能用Dynamic
Linked的方式使用,而且在你销售的拷贝中,不能包含这些库。但是安装的时候可以使用一个检测程序去检测用户机器上是否有这些库,如果没有,帮助他去官方网站下载并安装这些库。
没有区别,你公司的程序都不能再私有下去了
如果是链接LGPL的库,才有区别。区别是动态链接的话,你的私有程序可以不开源;静态连接,则需要开源
--
Zhang Le, Robert
Gentoo/Loongson(龙芯) Developer
http://zhangle.is-a-geek.org
这是安全的做法。但GPL/LGPL本身并不讨论静态、动态链接问题。
> 如果是GPL,或者静态链接,你的程序都必须开源。
> 然而,如果你的程序不是必须使用这些库,你可以做一个引导程序,当客户机器上没有这些库的时候下载安装编译。这并不违法,因为你的发行中并不包含这些代码。
> 如果你的程序必须依赖于这些库,那么这个事情似乎没有定论。理论上也可以进行下载安装编译,但是这样等于你卖的程序不完整了,用户可能会找你麻烦。
> 不过一个通行的办法是,将你的程序核心部分也写成一个库,使得这个库不依赖于任何开源库。然后用一个开源的程序整合几个部分。
作为一个整体,这个程序的分发仍然违反GPL。nVidia的做法是让开源的代码自动下载闭源的.o文件,在目标机上编译产生最终的驱动。我想这个模式并不适合搂主。
--
Wu Yongwei
URL: http://wyw.dcweb.cn/
2010/7/20 Yongwei Wu <wuyo...@gmail.com>:
很多库是LPGL的,这点不错,直接用就行了
On Jul 20, 10:34 pm, 机械唯物主义 : linjunhalida <linjunhal...@gmail.com>
wrote:
> dropbox也是发布开源代码的exe,然后连网下载闭源模块。
>
> 2010/7/20 Yongwei Wu <wuyong...@gmail.com>:
>
> > 2010/7/19 Shell Xu <shell909...@gmail.com>:
关键是用户必须自己了解GPL的许可和权利,然后自己选择和闭源的东西一起使用。GPL只限制分发,不限制使用。
2010/7/21 valpa <valpa...@gmail.com>: