0. 环境 win10, qt 6.3.1
1. 下载源代码
mqtt: https://github.com/qt/qtmqtt, 找到对应的tag, 比如:6.3.1, 然后下载.zip文件。
perl: https://strawberryperl.com, 选64位下载。
2. 安装perl, 安装完,在环境变量里加上perl的bin目录。如果不加,有可能 qt creator找不到perl.
3. 进入mqtt源码目录: d:\program\qt-mqtt\qtmqtt-6.3.1
修改 .cmake.conf, 在最后添加一行, 这个是指定qt6的目录。
set(CMAKE_PREFIX_PATH "D:/program/qt/6.3.1/mingw_64")
4. 编译
打开qt creator,
菜单 “文件”-> “打开文件或项目”,打开 d:\program\qt-mqtt\qtmqtt-6.3.1\CMakeLists.txt
5. 选 "Desktop 6.3.1 mingw 64位" -> Release, 如果没有问题。点左边绿三角号图标编译。
6. 编译好后,进行文件copy: (会有一个红叉,说cmake脚本里没有一个executable, 因边是编译生成.a库,所以不需要executable,不用管它)
源: D:\program\qt-mqtt\build-qtmqtt-6.3.1-Desktop_Qt_6_3_1_MinGW_64_bit-Release 这个qt 编译后自动生成的目录
目的: D:\program\qt\6.3.1\mingw_64\, 如果生成的是vs2019的代码: D:\program\qt\6.3.1\msvc2019_64
需要copy的文件和文件夹,放到目标文件夹对应的目录里:
1. bin\Qt6Mqtt.dll
2. include\QtMqtt (目录)
3. lib\*
4. mkspecs\modules\*
5. modules\Mqtt.json (可能没有这个, QT += mqtt就不好用)
这样,新建一个工程, .pro文件里加上 QT += mqtt, 就不会报:Unknown module: mqtt 错误了。