我通过网络收集了一下QT的资料,但是发现QT是有开源协议的,协议是LGPL。
LGPL协议:
1.不可以闭源。
2.新增加代码不可以采用许可证。
3.不需要对修改之处提供说明文档。
那也就是,我使用QT生成项目,项目调用了QT的源码,也就是我的整个项目必须要开源?
难道想要闭源,必须要使用商业版?
C++技术网会员解答:
您好,感谢你对C++技术网的支持与信任。
我不知道你想用QT来做什么,是出于自己做一些软件,还是给公司做软件。之前有一个解答是按照协议的说明来解答的。但是这次我不想这么回答了。
为什么?在中国这个国度里,你觉得这些协议很起作用吗?哈哈哈。我们不是说不想尊重开源的协议,而是不要因此让自己担负太大的压力。按照平常心来讲,我们一般不要太顾及协议这个东西。开源是为了让代码得到更好的继承,造福人类。当然不排除一些公司利用开源来推广自己。反正开源了对我们都有好处。
如果说,你觉得使用开源协议很受益,在可能的情况下,可以将个人的不错的代码开源,或者捐款。再不行,也可以大力帮忙推广,都是对开源的支持。而如果是个人写个小软件或者给公司写软件,其实都没什么问题的。
如果你真的对协议很重视,你可以按照协议的去做,但是按照模块将需要开源的部分分离开,这样可以避免核心的代码被公开,毕竟这些是我们的商业机密。开源组织自然也不会那么太过苛求的。
反正我们公司,用QT的人大有人在,其他公司,到处都有人在,他们也没有考虑这个问题。最近我们公司上市了,也没有见开源组织说查代码之类的。连正版化都没有查什么,VS工具我还是盗版的呢,微软也不来找我。
闲话说完,就是告诉你,不要有太多的心理负担。QT这么多人用,大家都用的好好的,你也随大伙一块用就行了。QT现在使用的很多,放心用就行了。
请你相信我,学QT不会有错,好好学,先不要被那些条条框框限制了,否则QT怎么火的起来。早些年,微软不是纵容盗版么,不就是想让微软的产品普及嘛。现在还是盗版横行,也没有见几个公司被微软高了。当然也就告一下巨头公司而已,小公司还懒得玩呢。
作为一个新手,有疑虑是很正常的,希望你看完这段解答,能够释然,然后想学就好好学吧。