首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >启动GPL附加GPL-ize程序(Gstreamer)的能力吗?

启动GPL附加GPL-ize程序(Gstreamer)的能力吗?
EN

Software Engineering用户
提问于 2013-05-21 22:08:36
回答 1查看 189关注 0票数 3

这个问题被问到gstreamer,但它可以适用于任何基于附加的体系结构。

我有一个基于Gstreamer的应用程序,它可以作为专有的发布,因为我在其中使用了所有LGPL部件中的未修改的Gstreamer。不过,我可能也需要发布一个版本,其中一个Gstreamer插件是GPL。据我所知,这会污染整个程序。

如果没有在程序中包括Gstreamer管道规范,我发布它时可以从外部文件读取管道规范(按照某些指令(例如,作为GstParseLaunch()-able规范)编码),我是否可以将程序作为专有程序发布,管道规范文件作为GPL发布?我需要在多远的地方发布这些项目,也就是说,程序会在一个发行版中,而规范会在另一个发行版中单独发布吗?

如果程序从来没有真正发布过,而是在设备内部销售的嵌入式应用程序,而设备被预装了专有部分和非专有部分,那该怎么办?

EN

回答 1

Software Engineering用户

发布于 2013-05-22 07:30:29

大多数答案都可以在GPL常见问题中找到。

对于GPL和非自由软件之间的交互,其基本原则是,它们只能作为独立程序执行,才能共存。它们可以通过标准的进程间通信功能相互通信,但就操作系统而言,它们应该是单独的程序。GPL和LGPL之间的主要区别在于,LGPL还允许非自由程序使用动态链接库。

就插件而言,影响许可状态的唯一因素是插件的格式以及插件加载后插件与主程序交互的方式。如果插件是单独的程序,或者应用程序将它们作为独立程序对待,那么在一个非免费程序中有一个GPL插件是可能的。如果插件是具有任何来回通信的库,那么您就不能在非免费程序中使用GPL插件。

据我所知,要加载的插件的外部规范不会使使用GPL插件与非自由程序相结合(在许可证看来)是可以接受的。你是对的,一个GPL插件将污染整个程序。

(L)GPL软件和嵌入式设备本身就是一个完整的话题。

这里的简短版本是,如果您分发了一个装载了GPL软件的设备,那么您就是在分发该软件,因此您必须向设备的购买者提供可用的源代码(假设该软件可以升级而不需要对设备进行物理修改)。

GPL的意图一直是终端用户应该能够用他们自己的版本替换设备的软件,但是显然GPLv2在这里有一个漏洞。GPLv3已将此意图明确要求。

票数 4
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/198950

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档