Cmake + vcpkg 构建 OpenCV 应用

本文主要记录使用 vcpkg 包管理工具安装 OpenCV,然后在 CLion 中使用 CMake 构建工具调用 OpenCV 的环境配置过程

环境:

  • Windows 10
  • VS 2019

安装使用 vcpkg

官方文档

1. 克隆 vcpkg

git clone https://github.com/Microsoft/vcpkg.git

2. 构建 vcpkg

.\vcpkg\bootstrap-vcpkg.bat

构建完成之后,可以将 vcpkg 所在路径加入环境变量,便于在其它目录下调用。

3. 使用 vcpkg

vcpkg install [packages to install]

另外,如果没有安装合适版本的 CMake,此过程中会自动安装。

值得注意

在使用 vcpkg 安装第三方包时,可能会出现无法构建的情况,提示无法使用ninja -v命令。

解决方法为,在Visual Studio Installer中安装英文语言包即可:

Cmake + vcpkg 构建 OpenCV 应用_第1张图片

使用 vcpkg 安装 OpenCV

直接使用一下命令即可:

vcpkg install opencv:x64-windows

其中,x64-windows为64位版本,不注明默认为32位。

编译时间较长,耐心等待即可。

CMake 中使用 OpenCV

1. 设置 CMake 参数

根据官网的提示,设置DCMAKE_TOOLCHAIN_FILE参数:

使用 CLion 时,在设置中填写即可,路径指向 vcpkg 安装的位置:

Cmake + vcpkg 构建 OpenCV 应用_第2张图片

2. 修改 CMakeList.txt 文件

需要添加的代码如下:

find_package(OpenCV CONFIG REQUIRED)
# Note: 10 target(s) were omitted.
target_link_libraries(main PRIVATE ${OpenCV_LIBS})

其中,target_link_libraries(main PRIVATE ${OpenCV_LIBS})中的main改为可执行文件名即可

另外,可以循环输出${OpenCV_LIBS}查看具体链接了哪些库:

foreach(list ${OpenCV_LIBS})
    message(${list})
endforeach(list)

因为根据 vcpkg 安装完 OpenCV 之后给的提示填写链接库,使用 OpenCV 读取读取图像时,会报无法解析外部符号的错,这里指定为所有的库。

3. 测试

#include 
#include 

using namespace cv;


int main() {
    Mat image = imread("F:\\pics\\mine\\tx.jpg");
    namedWindow("test", WINDOW_AUTOSIZE);
    imshow("test", image);
    waitKey(0);
    return 0;
}

其中图像路径修改为本地路径。

成功显示图像:

Cmake + vcpkg 构建 OpenCV 应用_第3张图片

你可能感兴趣的:(环境配置,opencv,c++,cmake)