- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
关闭。这个问题是off-topic .它目前不接受答案。
想改善这个问题吗? Update the question所以它是 on-topic对于堆栈溢出。
9年前关闭。
Improve this question
我想很多人都想知道这一点。我在网上和堆栈上搜索,而
这之前已经在堆栈上讨论过,它不是关于 Qt 的……也不是在相同的上下文中。
Qt 是 LGPL。
这意味着(只要你不修改Qt):
(1) 商业开发不需要商业许可证($)只使用 Qt。
(2) 不需要将您的应用程序 src 代码泄露给任何需要它的人。
Oracle MySQL 是 GPL。
这意味着(即使你不修改MySQL)——解读A:
(1) 商业开发需要商业许可证(最低 2000 美元/年)才能使用 MySQL。
(2) 必须将您的应用程序 src 代码提供给任何需要它的人。
这意味着(即使你不修改MySQL)——解释B:
(1) 商业开发不需要商业许可证 ($) 只使用 MySQL。
(2) 必须将您的应用程序 src 代码提供给任何需要它的人。
这意味着(只要你不修改MySQL)——解读C:
(1) 商业开发不需要商业许可证 ($) 只使用 MySQL。
(2) 不需要将您的应用程序 src 代码泄露给任何需要它的人。
虽然 LGPL 是明确的,但关于 GPL 存在很多混淆。我想知道哪个版本的 GPL 解释是正确的(A、B 或 C)。我相信这里有一些专业人士知道这一点。
我个人对 GPL 的理解是 GPL 是针对库链接(代码重用……而不是应用程序使用)编写的。也就是说,如果你使用一些代码,或者你扩展一些代码来制作一个应用程序,你的权利/限制和其他人的权利是什么。我不相信 GPL 是指限制您对 GPL 应用程序的使用。如果我错了,请纠正我。
例如,大多数 LINUX 是 GPL。如果我在 Linux 上进行开发,我的所有应用程序都必须是 GPL 吗?我认为这样的解释是不准确的。所以我认为使用 GPL 应用程序和使用/重用 GPL src 代码是有区别的。
通过以上示例的扩展,如果我使用名为 MySQL 的应用程序......为什么 MySQL 的 GPL 许可证会感染我编写的任何应用程序,因为它使用 MySQL 数据库来存储和检索数据?这和用Linux开发有什么区别?
现在,进入我的困惑点,以及帖子的内容。在回答我的最后一个问题时,我看到了一些令人困惑的说法,即链接到 MySQL 数据库的重要性。我不明白这个...虽然我认为一般的想法是用于链接到 MySQL 的 API 也可能是 GPL。与其涵盖每个场景,不如让我们针对 API。
我在 Qt 中使用了什么库?我正在按照 Qt 说明构建 QMYSQL(MySQL 驱动程序)。 http://doc.qt.nokia.com/latest/sql-driver.html这个构建过程依赖于 MySQL 提供的一些文件(可能是 GPL)。我不知道 Qt 使用术语“驱动程序”在什么意义上。从我的角度来看,“驱动程序”是一个底层引擎,它允许某些东西工作,因此除了在 LINUX 中安装一些 GPL 驱动程序外,我看不出它与我的应用程序有什么关系,这样我就可以启动 LINUX 并执行一些操作商业编码。我也不明白为什么Qt让人们“构建”QMYSQL插件。是技术原因还是许可证原因?为了控制 MySQL,我使用 Qt“QSqlDatabase”和“QSqlQuery”类。
因此,如果我 --USE-- MySQL 用于数据存储并且我的商业应用程序使用 Qt 来管理、存储、检索、更新我的 MySQL 数据库中的数据,那么上述 GPL 许可解释中的哪一个是正确的(A、B 或C)?
*最后说明。我知道人们将 MySQL 与网站联系起来。让我们在本主题的上下文中认为 MySQL 也适用于业务应用程序……而不仅仅是网站。两者之间的主要区别在于网站需要一个中央数据库,而业务应用程序可能需要每个客户都有自己的数据库部署。归根结底,它只是存储数据(无论哪种方式)。据我所知,将 MySQL 包含在与商业闭源应用程序相同的安装光盘上并不违反 GPL,让安装程序安装它,然后闭源应用程序制作数据库和表。如果我错了纠正我。 .
最佳答案
免责声明:我是 不是 律师!
我的理解是,一旦使用 MySQL 分发您的应用程序,您就必须支付许可证费用。
如果您不分发您的应用程序,但仍然需要 MySQL(并且不会与任何其他 DBMS 一起运行),您还需要一个许可证(但在这里我已经不太确定了)。
所有这些不确定性让我避免在商业环境中使用 GPL(甚至 LGPL)许可的任何软件。
幸运的是,还有其他同样好(甚至更好)的 DBMS 拥有更自由的许可证。
关于MySQL + Qt QMYSQL 插件 = 商业 MySQL 许可证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5423874/
操作系统:Windows 10 x64 我已将 Qt 版本从 5.10.0 更新到 5.12.5。我在让我的套件再次工作时遇到了一些麻烦,但最终我可以 qmake 并构建应用程序。但一旦我启动它,应用
我想将我的数据库(mysql)连接到 ubuntu 16.04 上的 Qt 库。 但是我遇到了这个错误: QSqlDatabase: QMYSQL driver not loaded QSqlData
如何在 Qt 中加载 qmysql 驱动程序?我有以下产生这些结果的代码: ("QSQLITE", "QMYSQL", "QMYSQL3") QSqlDatabase: QMYSQL driver n
我正在运行来自 http://www.python.org/getit/ 的 python 2.7.3 (python-2.7.3.amd64.msi) 我使用的安装程序来自:http://www.l
我遇到了无法连接 MySQL 数据库的问题。然而this答案对我有用。问题是:我不想将“libmysql.dll”和“libmysql.lib”复制并粘贴到每个使用 MySQL 的项目中(如“Bast
我尝试使用 QT 中的 MySQL 模块,但没有结果,该模块存在,但 Qt 未加载它。我有这个错误 QSqlDatabase:未加载 QMYSQL 驱动程序 QSqlDatabase:可用驱动程序:Q
我目前正在开发 Qt5 应用程序,该应用程序涉及将 mysql 数据库与 QMYSQL 一起使用。它在调试 session 期间就像一个魅力,但是当我在发布时编译它时,我得到错误: Driver no
当我尝试访问 mysql 时,出现以下错误: QSqlDatabase: QMYSQL driver not loaded QSqlDatabase: available drivers: QSQLI
我刚刚完成了 QT CRUD 应用程序的开发。我使用 SQLite 将信息本地存储在运行应用程序的磁盘中。这样我的应用程序就可以正常工作了。 但是该应用程序缺少中央数据库服务器。因此,我首先安装 My
首先,非常感谢那些愿意花时间帮助我解决这个问题的人。在此处发帖之前,我在许多不同的论坛上进行了大量搜索,但似乎遗漏了什么。 好吧,我正在使用 Qt5.5/MySQL Server 5.6 在 Wind
当我运行这段代码时,Qt 与 MySql 的连接出现问题 QSqlDatabase DBObject = QSqlDatabase::addDatabase("QMYSQL"); DB
我正在使用 QT-Creator 作为 Mac OS 10.8 上的 IDE 使用 QT 5.3 编写 C++ 应用程序。当我尝试使用 加载 QMYSQL 插件时出现问题 db = QSqlDatab
我正在尝试在我的 Qt 应用程序中实现一个数据库系统。为此,我正在尝试使用 MySQL(以及相关的 QMYSQL 驱动程序)。我的类连接函数写在下面。 假设 connection 被定义为一个 pri
如何使用 Pyside2 (pip) 和 python3.8 安装和加载 Qmysql 驱动程序?我已经尝试下载 git:qtbase 并从那里编译驱动程序,但我很幸运。 最佳答案 这个答案不仅包括L
我正在尝试使用适用于 64 位 Windows 的 Python 3.6 上的 PyQt5 连接到 MySQL 数据库。当我调用QSqlDatabase.addDatabase('MYSQL')时并运
我正在尝试使用带有 Qt 的 MySQL 服务器连接到数据库。它不起作用,当我运行代码时,我收到下面的错误消息。 QSqlDatabase: QMYSQL driver not loaded QSql
我有一个应用程序需要连接到 MySQL 数据库,我使用的是 Qt 4.7。我构建了 QMYSQL 插件,在我的机器上一切正常。当我尝试在另一台机器上测试应用程序时,文件夹“sqldrivers”在我的
我想在 Ubuntu 上通过 PyQt4 访问 SQL 数据库。我已经安装了 apt-get install python-qt4-sql 但是当我像这样添加数据库时: import sys from
我已经在 Windows 和一些 Linux 版本上解决了这个问题,现在是 Mac 时间了。这一切都始于以下内容: QSqlDatabase: QMYSQL driver not loaded QSq
尝试连接到 mysql 数据库时出现以下错误:未加载驱动程序。 我已经创建了一个安装程序,其中包含所有需要的 DLL 文件(libmysql.dll、plugins/qsqlmysql.dll、QT5
我是一名优秀的程序员,十分优秀!