【问题标题】:QtSerialPort QSerialPort no such file or directoryQtSerialPort QSerialPort 没有这样的文件或目录
【发布时间】:2013-06-16 21:06:38
【问题描述】:

我用这个教程:http://doc-snapshot.qt-project.org/qt5-stable/qtserialport/blockingmaster.html

但是当我想运行它时Qt Creator会产生以下错误:

错误:QT 中的未知模块:串行端口

当我在#include <QtSerialPort/QSerialPort> 上按住鼠标时,它会说:

不包含这样的文件或目录

我使用 Qt 5.0.1 有什么想法吗?

【问题讨论】:

  • 你真的构建和安装了模块吗?阅读this

标签: c++ qt qt-creator qtserialport


【解决方案1】:

尝试包括#include <QtSerialPort/QSerialPort> 而不是
#include <QSerialPort>,这对我有用

【讨论】:

    【解决方案2】:

    QtSerialPort 模块不是 Qt 5.0 的一部分。它被添加到即将发布的 Qt 5.1 中。

    您正在查看即将发布的 Qt 5.1 的文档快照。见http://doc-snapshot.qt-project.org/qt5-stable/qtdoc/index.html

    Qt 5.0 的文档在这里:http://qt-project.org/doc/qt-5.0/qtdoc/index.html

    如果你还想尝试 QtSerialPort,Qt 5.1 的 RC1 刚刚发布。你可以在这里下载:http://download.qt-project.org/development_releases/qt/5.1/5.1.0-rc1/

    【讨论】:

    • 我已经安装了 QT 5.1.1,但我仍然看不到那个模块。它在 QT 5.1.1 中被删除了吗?
    • 我不确定您所说的“看不到”是什么意思。 Qt Serial Port 模块是一个附加模块。您需要在您的 qmake 项目文件中激活它,并且还需要包含头文件 QtSerialPort。请参阅documentation 了解更多信息。
    • 我的意思是(例如)...\5.1.1\msvc2012\include\QtSerialPort 在安装 QT 5.1.1 后不在我的文件系统上。我已经重新安装并选择了安装源组件(默认情况下未选择)并且 QtSerialPort 现在可用。
    【解决方案3】:

    尝试包括

    #include <QtSerialPort/QSerialPort>
    

    同时更新你的 project.pro 文件,添加这个标志

    QT += serialport
    

    在清理之后,qmake,重建项目

    【讨论】:

    • 我认为 OP 在 6 年半前的 .pro 文件中已经有该行,当他们问这个问题时,因为他们收到了错误 error: Unknown module(s) in QT: serialport。而另一个答案已经包含了包含的东西。你有没有注意到这个问题在回答之前有多大? :)
    • 是的,我注意到了,但我添加了答案只是为了我的日志记录目的:) 因为今天我正在使用 Qt 串行并且我包含了 lib,但我不知道使用串行端口更新 project.pro 文件由于这个标志,我在构建中遇到了 qtserial 未定义的错误,然后搜索了很多,并在 github 上找到了示例项目,他们在其中向 pro 文件添加了 serialport 标志,所以它最重要的东西,只包括 Qserialport 将不起作用,pro 文件需要待更新。
    猜你喜欢
    • 2013-06-30
    • 1970-01-01
    • 2021-06-24
    • 2015-02-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-17
    相关资源
    最近更新 更多