好的,在所有人大声疾呼重复问题之前,是的,我已经在这里看到过类似的几个问题。但是没有人回答这个问题。
如果我链接到GPL版本的库而不修改该库,是否需要发布源代码?
根据这个问题,答案是肯定的!
但是这个答案对我来说并不令人满意。答案基本上是说,如果不使代码开源,就无法以任何方式使用GPL代码。
但是,如果先前的说法是正确的,那么这将表明没有任何人或组织可以在Linux上发布任何专有软件。哪一定是错的。仅仅是因为为了使任何应用程序执行任何有用的操作,请打开文件,写入控制台,创建TCP连接,因此必须将应用程序链接到libc
GPL版本。
所以我的问题是:如果GPL声明,如网站上所有先前的回答所述,链接到另一个GPL程序的程序必须是GPL本身,那么如何创建/发行/出售任何专有应用程序完全可以在Linux上运行?由于如上所述,该应用程序必须像GPL代码一样,才能在Linux上运行。
一个更实际的示例说,我链接到在非GPL应用程序中使用GPL编写的共享库,这会迫使非GPL应用程序成为GPL编写吗?更具体地说,如果我使用GPL库而不进行修改,然后将该库作为.so
或分发.dll
,这是否要求我的应用程序是开源的?