使用VS2022手动编译OpenCV3.4.0

当需要使用高版本的vs编译低版本的opencv时可能会出现一些奇奇怪怪的错误,这时可以尝试手动编译生成opencv库文件来进行适配。

编译OpenCV:
opencv3.4.0源码下载地址

这里可以选择其它版本:

使用VS2022手动编译OpenCV3.4.0

下载解压后得到opencv-3.4.0文件夹

打开CMake(CMake安装方法自行百度)

使用VS2022手动编译OpenCV3.4.0

点击Configure选择目标编译器,这里我选择vs2022

使用VS2022手动编译OpenCV3.4.0

点击Finish后可能需要等待一段时间,完成后根据需要选择要编译的模块。
建议勾选BUILD_opecv_world,可以全部模块生成一个文件。

当不需要python支持,或者生成的工程无法编译通过python部分时,可以取消下面两个选项:

使用VS2022手动编译OpenCV3.4.0

点击Generate开始生成vs2022工程。

生成成功后到输出目录打开OpenCV.sln工程
右键ALL_BUILD,选择”生成”进行编译。

使用VS2022手动编译OpenCV3.4.0
等待编译完成,然后再右键INSTALL,选择”生成”

编译完成后在工程目录下会生成一个install文件夹,里面的文件就是生成的OpenCV库文件。
这里只编译debug模式下的库,release模式的大家自行编译。

接下来配置使用环境:
1、配置环境变量
将install文件夹移动到你喜欢的位置,重命名为opencv。然后将文件夹下的bin目录添加到环境变量中。
右键此电脑 > 属性 > 高级 > 环境变量 > 放到下面这里 > 编辑 > 添加目录 > 确定 > 重启电脑即可。

使用VS2022手动编译OpenCV3.4.0

2、包含头文件、包含静态链接库文件

使用VS2022手动编译OpenCV3.4.0

使用VS2022手动编译OpenCV3.4.0
使用VS2022手动编译OpenCV3.4.0
添加静态链接
使用VS2022手动编译OpenCV3.4.0
使用VS2022手动编译OpenCV3.4.0
至此环境配置完成。

——————————————-分界线———————————————————-

之后我在笔记本上使用vs2019编译opencv3.4.0时出现编译不通过的情况,这里做下记录:

按照上面的步骤生成vs2019的工程后进行编译。
编译出现几十个错误,翻看最上面的错误编译信息,信息如下:

17>Processing OpenCL kernels (core)
17>Building NVCC (Device) object modules/world/CMakeFiles/cuda_compile.dir/ /core/src/cuda/Debug/cuda_compile_generated_gpu_mat.cu.obj
17>CMake Error at cuda_compile_generated_gpu_mat.cu.obj.cmake:206 (message):
17> Error generating
17>D:/Program_Files/OpenCV/my/VS2019_3_4_0/modules/world/CMakeFiles/cuda_compile.dir/
/core/src/cuda/Debug/cuda_compile_generated_gpu_mat.cu.obj
17>
17>
17>D:\Program Files\Microsoft Visual Studio\2019\Community\MSBuild\Microsoft\VC\v160\Microsoft.CppCommon.targets(241,5):error MSB8066: 太长了省略
17>已完成生成项目”opencv_world.vcxproj”的操作 – 失败。

从上面信息看是cuda模块编译失败了,可能是我笔记本上的显卡不支持什么的。
解决办法:
取消CUDA模块的勾选

使用VS2022手动编译OpenCV3.4.0
重新配置生成vs2019工程
使用VS2022手动编译OpenCV3.4.0
打开工程重新编译,发现可以编译通过了,问题解决!

Original: https://blog.csdn.net/qq_44662794/article/details/125546089
Author: 小工匠%d
Title: 使用VS2022手动编译OpenCV3.4.0

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/520460/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球