前言
之前编译了QT5.12版本的QtOpcUa库,可谓是费劲了力气,主要是编译过程中各种提示找不到头文件,需要人为将头文件复制到Qt的目录中,并且例子与文档也没有正常编译通过,另外项目使用过程中发现5.12分支使用batchRead同步方式请求节点的方式经常会请求超时,数据更新延时,遂尝试使用新版本库。
由于Qt5.15.2是最后一个Qt5的版本,所以使用5.15.2版本进行测试。此版本的库可通过订阅节点的方式来实现数据更新的异步回调。下面分享编译过程,以供大家参考。
使用Qt Maintenance Tool安装Qt5.15.2
安装所需要的Qt版本与需要的功能,并附带安装openssl
下载QtOpcUa源码
可以直接使用GitHubDesktop clone到本地,然后checkout 5.15.2的分支
编译QtOpcUa
1. 开始菜单启动Qt5.15的命令行工具
2. 引入vcvars64.bat完成编译环境设置
3. 复制openssl头文件到Qt安装目录
如果直接编译的话会出现找不到openssl头文件的报错
4. 执行编译并安装库
设置好命令行环境后,cd进入下载好的源码目录编译,之后执行nmake install,会自动把相关文件复制到qt对应版本的安装位置。
还可以编译并安装帮助文档。
cd /qtopcua
mkdir build
cd build
qmake ..
nmake
nmake install
nmake docs
nmake install-docs
5. 安装示例项目
需要手动复制qtopcua/example/下 opcua文件夹到 对应版本的示例文件夹中
测试