Qt串口库

时间:2011-07-05 18:50:44

标签: qt qt4 serial-port

我想使用与串口通信的Qt制作应用程序。

问题在于我无法找到一个可以工作并执行此操作的库。 我想我需要一个非通用公共许可证库。

实际上我不确定因为我不知道我是否可以使用通用公共许可证库来进行封闭源程序。

我找到了qextserialport,但我无法使用Qt 4.7.3构建它。我添加了所有需要的标题,但它在某些函数上失败了。

有人可以帮我吗?

2 个答案:

答案 0 :(得分:4)

如果您想要关闭源代码并分发您的应用程序,则无法使用GPL。动态或静态链接时可以使用LGPL。对于后者,you need to provide object files for all of your code,以便它们可以与Qt静态重新链接。

强调您的基本问题,Qt 5包含一个串行端口模块。在Qt 4上,您需要一个特定于平台的解决方案。缩小范围可能有助于指出一些事情。我建议如果你不针对可移植性,你应该添加相关的标签和注释。否则,说你需要便携式解决方案也是一件好事。

据我所知,在大多数表格中,访问串口需要更高的权限,因此请在部署中为此做好准备。

关于qtextserialport,许可证是BSD,因此它适用于您的clsoed源应用程序。如果你发布了一个关于它失败的编译问题,也许人们可以帮助你

我尝试使用VC2010和Qt 4.7.2编译它,项目负责人(我刚刚克隆它)完美编译:我有一个很好的qextserialport1.dll(我承认我没有尝试使用)。

答案 1 :(得分:3)

现在有一个QtSerialPort附加组件可用于此类任务。我是其背后的维护者之一。那是现在的“官方”Qt插件,所以我建议改用它。它也将支持Qt 4。

它对于商业代码(闭源)非常有用,因为我也一直这样做。如果我们还没有静态链接的例外,我甚至会在合法的情况下接受。

我对许可证的看法介于LGPLv2和MIT之间,即LGPLv2 +静态链接。

在这里你可以找到关于它的博客文章。它也适用于Qt 4,因为我们已经为这种支持付出了一些努力。

http://lpapp.blogspot.co.uk/2013/02/qtserialport-in-qt-51.html