遵守GPL的开源软件能用于商用吗?

  比较经典的开源协议有 GPL,BSD 等等。

  GPL 软件可以用于商业用途,甚至说,RMS 撰写 GPL 协议的目的就是为了让自己的 GPL 软件 emacs 可以有法律依据的进行一些商业行为(他当时靠卖 emacs 软件的光盘都赚了不少钱)。

  但是, GPL 软件要求你对该软件的修改必须回馈开源社区,换句话说就是如果你改了代码然后把修改版本程序发布,就必须同时发布你修改的源代码。

  如 果你并没有修改 GPL 软件本身的代码,并且在你的商业行为中,该 GPL 软件是以一个独立的可分割的形式发布,那么他可以不影响你的软件的其它部分。你的其他软件不必遵循 GPL 协议。——否则你的其他部分软件就要受到 GPL 协议的传染,必须遵循 GPL ,也就必须开源。

  只要满足上面的条件(换句话说只要满足 GPL 协议),你可以对软件进行任何商业行为,甚至包括拿着别人开发的 GPL 软件自己去卖钱。

  现实中,有很多商业公司希望修改开源软件的代码以符合自己要求,但又不想提供修改过的源代码。还有很多公司使用了未修改源代码的开源软件但并不希望将他作为独立的程序发布而是整合到自己的应用程序当中。这要求将自己的全部应用都开源。

  很 多商业公司认为,在开源的情况下无法保证自己的商业利益,因此会考虑绕开这种模式,所以就会选择避免使用 GPL 软件,所以他们认为 GPL 协议不适合商用。但一部分商业公司认为自己的软件就算开源也仍然符合自己的商业利益,所以他们可以很好的跟开源社区合作,这至少证明 GPL 软件是可以进行商业行为的。

  其实,很多人听说过的 ubuntu ,就是一个地道的商业公司 canonical 制作的。他们也围绕 ubuntu 进行了很多商业行为。类似的事情还发生在很多其他的 GNU 软件。