【QT/OpenCV】Qt创建并发布OpenCV dll项目

01、开发版本

以下所有源码与软件都是基于下面的版本。

1、QT: Based on Qt 5.12.2 (MSVC 2017, 32 bit)
2、OpenCV: OpenCV – 4.5.1

tips: OpenCV的版本不一定要跟我一样,但是版本之间可能会有些接口或者使用方法已经被更改,会导致使用后期关于我自己写的OpenCV的文章会有一些地方不能通用,望悉知!

02、QT创建dll项目

  1. 打开QtQcreator软件,选择创建一个新项目New Project

在这里插入图片描述
2. 选择library->C++库->Choose…

在这里插入图片描述 3. 选择共享库->添加库项目的名称->继续下一步

在这里插入图片描述
4. 勾选Select all kits->Desktop Qt 5.12.3 MinGW 64-bit (这里编译器根据自己的来即可)

在这里插入图片描述
5. 选择模块项->继续下一步

在这里插入图片描述
6. 然后确认项目名、选择代码管理之后完成dll动态库的创建。

03、dll项目配置说明

这里贴上一张按照上述创建项目之后的最终截图如下:
在这里插入图片描述

扫描二维码关注公众号,回复: 15433531 查看本文章
  1. 第一步:配置.pro文件
    在这里插入图片描述

tips: OpenCV的配置及两个目录的由来请参考其他博主的QT配置OpenCV的博客,很基础的东西,这里不做介绍了。

  1. 第二步:添加几个接口作为测试函数。
    在这里插入图片描述
  2. 关于_global.h文件介绍*

Q_DECL_IMPORT宏标记用于共享库导出的符号,如不想使用此opencvcameralib_global.h文件,只需要 将 4~10行拷贝到OpenCVCameraLib.h中即可。

如下图:

在这里插入图片描述
如果不想使用这个文件,可以删掉,只需要将红框的内容复制到项目名.h的头文件中即可。

04、dll动态库测试

  1. 新建一个Qt Widgets Application项目
    在这里插入图片描述

  2. 重命名项目名称
    在这里插入图片描述

  3. 选择项目配置版本
    在这里插入图片描述

  4. 修改类信息,默认MainWindow即可
    在这里插入图片描述

  5. 选择版本控制,有git就使用git
    在这里插入图片描述
    创建好的界面和.pro文件如下:
    在这里插入图片描述

tips:这里.pro中还配置了OpenCV的配置是因为我之前用这个项目做图形测试,所以保留了这个项目的部分接口,理论来说,用库的方式调用,这里只需要包含
LIBS += C:\Users\10125\Documents\OpenCV_CameraDemo\OpenCVCameraLib.dll
这里路径是库的生成路径,即Relese目录下的dll库路径。
注意: dll库和.h文件都要放入测试文件(实际调用项目)的exe文件同级,不然会报编译错误,即程序crashed。

错误如下:

11:58:40: Starting C:\Users\10125\Documents\build-OpenCV_CameraDemo-Desktop_Qt_5_12_3_MinGW_64_bit-Release\release\OpenCV_CameraDemo.exe ...
11:58:43: 程序异常结束。
11:58:43: The process was ended forcefully.
11:58:43: C:/Users/10125/Documents/build-OpenCV_CameraDemo-Desktop_Qt_5_12_3_MinGW_64_bit-Release/release/OpenCV_CameraDemo.exe crashed.

然后验证接口的调用是否OK即可。

猜你喜欢

转载自blog.csdn.net/m0_43458204/article/details/131171372