天天看点

QT编译OpenCV源码,支持转到定义

一般在VS和QT中配置OpenCV只是将头文件路径和库文件路径添加到工程中,这种做法是不支持跳转定义的。要想查看OpenCV源码,在VS中的一般方法是用Cmake将OpenCV源码生成一个VS工程,但是这种方法也不支持从用户自己写的代码中直接跳转到OpenCV相关函数的定义。现介绍一种在QT中导入OpenCV源码的方法,支持全局查找和跳转(画重点)。

详细配置步骤如下(Qt5.12.0+OpenCV4.0.1+Cmake3.14.2为例):

1、安装配置好QT+OpenCV。可以参照我上一条博客进行安装配置https://blog.csdn.net/qq_33474442/article/details/87074218

2、下载安装Cmake

3、下载opencv Source code并解压     链接:https://github.com/opencv/opencv/releases

4、打开Qt Creator。选择工具—>选项—>Kits—>Cmake,添加第2步中安装的cmake.exe

5、选择文件—>打开文件或项目,打开opencv源码路径下的CMakeLists.txt

QT编译OpenCV源码,支持转到定义

6、如果报"The C++ compiler is not able to compile a simple test program"这样的错误,是因为没有把Qt Creator添加到系统环境变量中,将D:\software\Qt\Tools\QtCreator\bin添加到系统环境变量中即可。

7、再次打开CMakeLists.txt,Qt Creator成功解析CMakeLists.txt,出现如下图所示结果即大功告成,此时已经支持全局查找及跳转。

QT编译OpenCV源码,支持转到定义

8、新建一个工程,比如打开笔记本摄像头。将光标定位到某一个函数,如imshow(),按F2就可以跳转到函数定义处查看具体实现源码。

QT编译OpenCV源码,支持转到定义
QT编译OpenCV源码,支持转到定义