许可 – GPL非自由库

我已经编写了一些我想在GPL,BSD或Apache许可下发布的应用程序,但它们依赖于专有的第三方库.

我的问题是:

如果我必须调用此第三方API,但我不将第三方库作为项目的一部分进行分发,我仍然可以声称该程序是开源的吗?

此外,在这种情况下,即使他们的IP未被分发,是否有可能出现法律问题,即“在行动中”显示第三方API?

最佳答案 该程序是免费和开源的,但程序和库的组合不是,并且程序本身可能不起作用.这取决于库实际上做了什么,以及它对程序功能的重要性.

如果它是作为操作系统一部分的库,或者通常安装在用户系统上的库,则用户已经拥有它并且您将为他们提供FOSS程序,就像任何仅在Windows上运行的FOSS应用程序一样(如Miranda),或更大的专有程序的FOSS插件.

另一种情况是,当您具有与系统上的专有应用程序接口的可选功能时,例如具有访问第三方应用程序的通讯簿(包括Outlook等专有应用程序)的功能的FOSS通信程序.在这种情况下,主要功能根本不需要库.

但是,如果您正在创建一个独立程序,其主要功能取决于专有库(例如,整个功能在专有库中,并且只有GUI是FOSS),那么您的应用程序在理论上将是FOSS但是不在实践中,因为库是您的应用程序中不可删除的组成部分.

请注意,如果您使用任何第三方GPL代码或库,则可能违反了GPL,除非专有库是操作系统的一部分.因此,请勿同时使用第三方GPL代码和第三方专有代码. (当然,如果您没有分发第三方库,或者您只使用自己的代码,那么它可能是合法的,但您构建的软件组合在工作表单中是非法的.)

点赞