随着 Qt 5.4 的发布,我们为Qt增加了LGPLv3 授权协议选项。Qt 5.4 中发布的一些新模块(Qt WebEngine、Qt Canvas3D 和 Qt WebView)将只适用于 LGPLv3/GPLv2 和商业授权协议。原因在于我们认为,LGPLv3 更符合我们既支持自由软件,有能够确保拥有必要资金进行Qt开发的目标。欲了解详细信息,请浏览Qt官方博客去年夏天的博文(链接: http://blog.qt.io/blog/2014/08/20/adding-lgpl-v3-to-qt/)。
距离发布 Qt 5.5 的日子越来越近,我们预计将在 2 月发布 Alpha 版本。虽然 Qt 5.5 侧重于增强稳定性和修复故障,但还是在新版本中增加了一些新模块。与 Qt 5.4 一样,这种新功能将在 LGPLv3/GPLv2 和商业授权协议下使用。
在与模块的主要贡献者KDE Free Qt 基金会和我们的一些主要股东讨论并达成一致意见之后,我们认为这是最好的发展途径。新模块将在 LGPLv3/GPLv2 和商业授权协议条款下可用。通过这种方式,我们既可以让自由软件社区使用这些模块,又能够对它们进行长期支持和深入开发。在新的授权协议条款下添加到 Qt 5.5 中的两个新模块分别是 Qt 3D 和 Qt Location。
Qt 3D 是诺基亚在 Qt 4.8 基础上开发出来的 Qt mobility APIs 的组成部分。在过去两年,我们合作伙伴 KDAB 的开发人员投入了大量的精力,重构代码库并使 API 更加灵活,更加适合将来的发展。目前,API 是一种功能强大的工具,不仅可以将 3D 内容集成到 Qt 中,而且还拥有 C++ 和 QML APIs 的特性。欲了解有关 APIs 的详细信息,请浏览 KDAB 的一系列博文(链接: http://www.kdab.com/category/blogs/qt3d/)。KDAB 赞同并支持在 LGPLv3 下授权使用Qt 开源版本的此模块。
Qt Location 同样是构成 Qt 4.8 mobility APIs 的一个模块。与 Qt 3D 一样,该模块在从 Qt 4.8 到 Qt 5 的升级中进行了大量的改动,而且现在还准备成为 Qt 5 的组成部分。API 通过提供 APIs 用于映射、位置搜索和导航,扩展了现有的 Qt Positioning 模块。此外,它还配有 C++ 和 QML 接口。
迄今为止,只有商业授权协议持有者才可以使用 Qt Quick 企业版控件。Qt Quick 企业版控件在常规控件之外,还提供了大量非常有用的功能(链接:http://doc.qt.io/QtQuickEnterpriseControls/index.html)。在 Qt 5.5 中,Qt 公司将在 LGPLv3 授权协议下将这些功能纳入到开源 Qt Quick 控件中。这将影响 Qt Quick 控件的授权方式,将使它们适用于 LGPLv3 和商业授权协议条款。除了让自由软件社区能够使用现有的企业控件之外,我们还添加了一些新功能。其中有功能全面的 TreeView,这弥补了以往针对桌面平台的 Qt Quick 控件中最大的一个功能缺失。
随着Qt 版本的不断更新,我们将继续在 LGPLv3 和商业条款下进行功能的授权。这将使得 Qt 公司有能力增加投资进行 Qt 新功能的开发,而同时又能允许自由软件社区使用它。
本文是由The Qt Company CTO,Lars Knoll撰写