在基于GPL发布的软件中,可以调用闭源库吗

在基于GPL发布的软件中,可以调用闭源库吗,第1张

GPL的出发点是代码的开源/免费使用和引用/修改/衍生代码的开源/免费使用,但不允许修改后和衍生的代码做为闭源的商业软件发布和销售。如果软件是非开源的,那么是不可以把GPL 下的软件源代码使用到该的程序中的。

开源是指提供了不仅提供程序还提供程序源代码,闭源是指提供程序,不提供源代码。如果一个程序不开源,别人就不能轻易的修改程序,也不能轻易的知道程序到底是怎么实现的。

特征:

程序开源了,帮助测试和修改的人也就多了,程序也就更丰富,变化更快,但缺点是质量参差不齐,品控很难把握。

苹果系统是闭源系统,这里的闭源是指大部分组件闭源,主要是内核,并不是说所有组件都是闭源的。

而应用开发更多使用的是这部分非闭源系统,假如有一个APP需要用到闭源部分的话,苹果的工程师会跟该APP工程师进行衔接,之后会将该APP在其APP store 上线。

苹果系统虽然是闭源系统,但是它闭的是内核核心机密代码,跟开发应用互不干涉,更何况苹果会给开发者注册开发者账号给予一定的开发应用需要的部分权限。苹果在自负也不可能闭源闭到开发者无法进行应用开发,毕竟那是在断自己的财路和市场竞争力。

不久前,苹果系统(macOS、iOS)已经将内核开源了,所以他们不再是闭源系统。开发一个软件,需要的是 *** 作系统暴露给开发者的各种接口。

应用程序通过调用这些接口来执行复杂的指令、实现高级任务。调用这些接口的过程中,开发者只需要关心接口的名称和参数,而不需要在意属于内核部分的具体接口实现。再封闭的系统都一定会给开发者留出接口。

打个比方,你眼前有一个黑盒子,上面有盏灯,然后黑盒子有四个接线柱裸露在外面。你无法知道黑盒子是怎样的构造,但是旁边的使用说明书告诉了你如何去 *** 作。

不同的 *** 作会得到怎样的结果。于是你可以将这四个接线柱利用起来,从而使黑盒子上的灯泡发出不同模式的光芒。

开源商城系统与闭源最大的区别就于两者的开放性,虽然开源的系统在国内起步要晚,不过由于开源商城系统公开性,源码可以被公众使用的软件,并且这个系统的使用、修改与发行都不受到许可证的限制,所以很多个人开发者可以参与进来,不断地完善系统,很快发展成为了业内的主流网店系统。不过需要注意的是,源代码公开并不代表免费,获取商城系统的源代码是需要一定费用的。

闭源商城系统与开源的正好相反,源代码不对外公开,费用问题由软件商掌握,不一定免费,闭源的意思是指商城系统软件商关闭商城系统的源代码。开源商城系统在国内起步晚,那么相对闭源网店系统来说,在国内使用得更加广泛。开源和闭源商城网站系统是商家们花时间和金钱开发出来的产品,有企业反映闭源的商城系统反而更让他们放心。

编译成wm软件非常容易,如果你熟练C或者NET的话,稍稍花一点时间弄清楚CE系统的编程函数调用和语法区别就可以了,之后你能很快编出wm的程序。部分PC上有的函数功能CE可能没有,这部份会麻烦点,实在不行牺牲一些功能也是可以的。

最麻烦的是反编译,视软件复杂程度和你的反编译水准,准备好打持久战吧!

不过干嘛非要反编译呢?只是为了实现功能移植的话完全反编译意义不大吧。仔细研究一下软件的功能,自己分析一下应该如何实现这些功能,然后起草一个框架,慢慢给各项功能累累代码不是更现实吗?

以上就是关于在基于GPL发布的软件中,可以调用闭源库吗全部的内容,包括:在基于GPL发布的软件中,可以调用闭源库吗、什么是开源,什么特征、苹果系统是闭源的,为什么那么多开发者被限制还愿意去开发等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9870233.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存