Win10下Clion配置opencv3

本文详细介绍如何在Win10环境下使用Clion配置并编译OpenCV 3.2.0,包括安装必要组件如tmd-gcc、cmake及Clion本身,以及排除编译过程中的常见错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本人不想在爱机装一个vs2013或者vs2015这种庞然大物,可是手头要弄一个基于windows的opencv项目,就只好装了个Clion,期间踩了不少坑,记录一下。
参考网址:http://www.zerovalues.com/2017/02/20/clion-CV32-Win10-64-cfg/
环境

Win10 64位 + Clion 2017.1 + cmake-3.7.2 +opencv3.2.0 + tmd-gcc (tdm64-1) 5.1.0

一.准备工作:
1.安装tmd-gcc:在官网链接下载最新的tmd-gcc安装包。本人是win10,就选了64位安装包,然后一路next安装。
2.下载cmake3.7.2,链接地址,这是个压缩包,记得解压放到某个目录。注意不要下载最新的3.8.0,因为clion2017.1版本暂不支持cmake3.8.0。
注意,这里需要把cmake解压后目录bin文件夹放到系统环境变量Path中:如D:\cmake-3.7.2\bin。
3.下载Clion:官网地址,然后安装exe文件,也是一路next安装。
4.然后打开Clion,依次进入Setting->Build,Execution,Deployment->Toolchains,把自己主机对应的MinGW和GCC目录依次设置:
这里写图片描述
5.下载最新opencv3(版本3.2.0),下载链接,下载后这个也是解压到某个目录下面。然后在解压后source同级目录下创建一个新的mingw-build文件夹用于存放编译后的内容。
6.如果你之前安装了Anaconda或者Python,请把这两个软件暂时从环境变量中删除,只是删除系统Path中的存在,不是卸载软件。原因是后面编译会有冲突。

新建目录
二.编译
1.打开D:\cmake-3.7.2\bin下的cmake-gui.exe,然后source和binary目录按如下图选择:
选择目录
其中:source目录对应你的opencv/sources目录,binary目录就是之前新建的那个mingw-build存放目录。
2.选好目录,点击configure选择选择MinGW Makefiles,如上图所示。
注意:遇见红色之后再次点击Configure(等于是要点两次),等到所有列表变白,没有红色一片的时候才表示成功。
这里需要手动下载一个opencv_ ffmpeg_64.dll文件,放到opencv/sources/3rdparty/ffmpeg/目录下,下载地址:opencv3.2 opencv_ffmpeg_64
如果是需要opencv_ ffmpeg.dll,也需要放到opencv/sources/3rdparty/ffmpeg/目录下,下载链接:opencv_ ffmpeg.dll
3.进入刚才创建的mingw-build目录,直接右键Git bash here(如果没装git windows,直接在cmd下进行),然后输入:


mingw32-make -j8 # 以8线程进行编译

编译图片

直到进度条进行到100%,说明编译成功了!

真是可遇不可求,2017.07.02,搞了一晚上,在一台win10台式机搞定了。成功
当然,如果出现

mingw32-make: *** No targets specified and no makefile found. Stop.

请继续重新编译,configure和generate。
另外,笔者成功的两次用的都是cmake3.7.2,都是把python暂时从环境变量删除了。
至此,安装完毕,接下来只需把include目录下的cpp文件复制到GCC的include目录下面就可以用Clion写opencv3程序了。详见我下一篇博客Clion下第一个opencv3程序

<think>我们正在处理一个关于在Windows11上使用VisualStudio2022安装OpenCV4.11.0的请求。根据提供的引用,我们有以下信息:-引用[1]:提到了Win11中CMake+VS2022编译OpenCV+OpenCV_Contrib,以及Clion+VS2022+OpenCV环境配置的参考文章。-引用[2]:提供了OpenCV4.11.0源码的下载地址和存放路径示例(解压到H:\workspace\opencv-4.11.0)。-引用[3]:提供了OpenCVOpenCV_Contrib的GitHub下载地址(均为4.11.0版本),并提到需要安装依赖库。-引用[4]:给出了一个测试代码示例,用于验证安装是否成功。用户需求:在Win11上通过VS2022安装配置OpenCV4.11.0。我们将按照以下步骤进行:1.下载OpenCV源码和OpenCV_Contrib源码(可选,但引用中提到了Contrib,所以应该包含)。2.使用CMake生成VS2022解决方案。3.使用VS2022编译OpenCV。4.配置环境变量。5.在VS2022中配置项目以使用OpenCV。6.编写测试代码验证。注意:引用[1]中提到了两种环境配置(CMake+VS2022和Clion+VS2022),但用户明确要求使用VS2022,因此我们主要参考CMake+VS2022编译的方法。步骤详细说明:###1.下载源码-OpenCV4.11.0:从GitHub下载[OpenCV4.11.0](https://github.com/opencv/opencv/releases/tag/4.11.0)的Sourcecode(zip)。-OpenCV_Contrib4.11.0:从GitHub下载[OpenCV_Contrib4.11.0](https://github.com/opencv/opencv_contrib/releases/tag/4.11.0)的Sourcecode(zip)。将两个压缩包解压到合适的目录,例如:-OpenCV:`D:\opencv\opencv-4.11.0`-OpenCV_Contrib:`D:\opencv\opencv_contrib-4.11.0`###2.安装依赖库根据引用[3],需要安装一些依赖库。但OpenCV主要依赖一些图像编解码库,在Windows下可以通过预编译的库来避免自己编译,但这里我们是从源码编译,所以需要确保系统有必要的工具。-安装CMake:从[CMake官网](https://cmake.org/download/)下载并安装最新版本(至少3.5.1以上)。-安装Python:可选,但某些模块需要(如绑定生成)。-安装VisualStudio2022:确保已安装“使用C++的桌面开发”工作负载。###3.使用CMake生成VS2022项目1.打开CMakeGUI。2.设置源码路径(Whereisthesourcecode)为OpenCV目录(例如`D:\opencv\opencv-4.11.0`)。3.设置构建路径(Wheretobuildthebinaries)为源码路径下的`build`文件夹(例如`D:\opencv\opencv-4.11.0\build`)。4.点击“Configure”,选择生成器为“VisualStudio172022”(对应VS2022),平台选择x64(推荐),然后点击“Finish”。5.等待配置完成(此时会出现红色配置项)。6.在配置列表中,找到`OPENCV_EXTRA_MODULES_PATH`,将其设置为opencv_contrib的modules目录(例如`D:\opencv\opencv_contrib-4.11.0\modules`)。7.根据需求,可以启用或禁用一些选项,例如:-`BUILD_opencv_world`:将所有模块编译到一个库文件中(可选,方便链接)。-如果需要非免费模块,设置`OPENCV_ENABLE_NONFREE`为ON。8.再次点击“Configure”,直到没有红色项出现。然后点击“Generate”生成VS解决方案。###4.使用VisualStudio2022编译1.打开生成的解决方案文件(在build目录下的`OpenCV.sln`)。2.在解决方案配置中选择“Release”和“x64”。3.在解决方案资源管理器中,右键点击解决方案(或ALL_BUILD项目),选择“生成”。此过程可能需要较长时间。4.编译完成后,右键点击“INSTALL”项目,选择“生成”。这将把OpenCV安装到指定目录(默认是`build\install`目录,即`D:\opencv\opencv-4.11.0\build\install`)。###5.配置环境变量将OpenCV的bin目录添加到系统环境变量PATH中。例如:`D:\opencv\opencv-4.11.0\build\install\x64\vc17\bin`(注意:vc17对应VS2022)。###6.在VS2022中配置项目创建一个新的VS2022项目(例如控制台应用),然后配置项目属性:1.打开项目属性页(右键项目->属性)。2.配置管理器选择“Release”和“x64”。3.在“VC++目录”中:-包含目录:添加OpenCV的include目录,例如:```D:\opencv\opencv-4.11.0\build\install\includeD:\opencv\opencv-4.11.0\build\install\include\opencv2```实际上,安装目录下的include文件夹内只有opencv2一个子文件夹,所以通常只需添加:```D:\opencv\opencv-4.11.0\build\install\include```-库目录:添加OpenCV的lib目录,例如:```D:\opencv\opencv-4.11.0\build\install\x64\vc17\lib```4.在“链接器->输入”中:-附加依赖项:添加需要链接的库文件。如果编译时启用了`BUILD_opencv_world`,则只需添加`opencv_world4110.lib`(Release版)和`opencv_world4110d.lib`(Debug版)。否则,需要添加所有需要的模块的lib文件(例如opencv_core4110.lib等)。注意:Release版使用不带d的lib,Debug版使用带d的lib。###7.测试代码使用引用[4]中的测试代码,注意修改图片路径:```cpp#include<opencv2/core/core.hpp>#include<opencv2/imgproc.hpp>#include<opencv2/highgui/highgui.hpp>#include<iostream>usingnamespacecv;usingnamespacestd;intmain(){Matimg=imread("F:\\material\\picture\\Textures\\白砖.jpg");//替换为你的图片路径if(img.empty()){cout<<"Couldnotopenorfindtheimage"<<endl;return-1;}namedWindow("test");imshow("test",img);waitKey(0);return0;}```注意:如果图片路径包含中文,请确保系统支持。如果出现无法打开图片,请检查路径是否正确。###注意事项-编译过程可能需要较长时间,请耐心等待。-如果编译过程中出现错误,可能是缺少依赖项,请根据错误信息解决。-如果使用OpenCV_Contrib,可能会遇到下载第三方库失败的情况,可以手动下载并放到指定目录。§§相关问题§§1.如何解决OpenCV编译过程中第三方库下载失败的问题?2.如何在CMake配置中启用CUDA支持?3.如何配置OpenCV以使用Intel的集成性能基元(IPP)?4.如何为多个版本的OpenCV进行版本管理?</think>### 在 Windows 11 上使用 Visual Studio 2022 安装 OpenCV 4.11.0 的完整指南 #### 1. 下载源码 1. **OpenCV 主库** 从 GitHub 下载 [OpenCV 4.11.0 源码](https://github.com/opencv/opencv/releases/tag/4.11.0)(选择 Source code.zip)[^2][^3]。 2. **OpenCV_Contrib 扩展模块**(可选) 下载 [OpenCV_Contrib 4.11.0](https://github.com/opencv/opencv_contrib/releases/tag/4.11.0)(需与主库版本匹配)[^3]。 #### 2. 解压源码 - 将 `opencv-4.11.0.zip` 和 `opencv_contrib-4.11.0.zip` 解压到自定义目录(如 `D:\opencv`),得到: ``` D:\opencv\opencv-4.11.0 D:\opencv\opencv_contrib-4.11.0 (可选) ``` #### 3. 安装依赖工具 1. **CMake** 从 [CMake 官网](https://cmake.org/download/) 下载最新版本(≥3.5.1)。 2. **Visual Studio 2022** 安装时勾选: - "使用 C++ 的桌面开发" - "Windows SDK"(建议 10.0 或 11.0) #### 4. 使用 CMake 生成 VS 解决方案 1. 打开 CMake GUI 2. 设置路径: - **源码路径**: `D:\opencv\opencv-4.11.0` - **构建路径**: `D:\opencv\opencv-4.11.0\build`(新建文件夹) 3. 点击 `Configure`: - 选择生成器: **Visual Studio 17 2022** - 平台: **x64** 4. 配置关键选项: ```plaintext BUILD_opencv_world: ON # 将所有库合并为单个文件(推荐) OPENCV_ENABLE_NONFREE: ON # 启用专利算法(如 SIFT) OPENCV_EXTRA_MODULES_PATH: D:/opencv/opencv_contrib-4.11.0/modules # 扩展模块路径[^3] ``` 5. 点击 `Generate` 生成 VS 解决方案。 #### 5. 使用 Visual Studio 2022 编译 1. 打开 `D:\opencv\opencv-4.11.0\build\OpenCV.sln` 2. 设置编译模式: - 顶部菜单:解决方案配置 → **Release** - 解决方案平台 → **x64** 3. 编译: - 右键解决方案 → `生成解决方案`(耗时约 30-60 分钟) 4. 安装到系统: - 右键 `INSTALL` 项目 → `生成` #### 6. 配置环境变量 1. 添加 OpenCV 的 `bin` 目录到系统 PATH: ``` D:\opencv\opencv-4.11.0\build\install\x64\vc17\bin ``` 2. 重启系统使环境变量生效。 #### 7. 在 VS2022 项目中配置 OpenCV 1. 创建新项目(C++ 控制台应用) 2. 打开项目属性 → 选择 **Release|x64** 3. 配置包含目录: ``` D:\opencv\opencv-4.11.0\build\install\include ``` 4. 配置库目录: ``` D:\opencv\opencv-4.11.0\build\install\x64\vc17\lib ``` 5. 添加依赖库(链接器 → 输入 → 附加依赖项): - 若启用 `BUILD_opencv_world`:`opencv_world4110.lib`(Release) - 若未启用:添加所需模块(如 `opencv_core4110.lib`, `opencv_highgui4110.lib`) #### 8. 测试代码 ```cpp #include <opencv2/opencv.hpp> using namespace cv; int main() { Mat img = imread("D:/test.jpg"); // 替换为你的图片路径 if (img.empty()) { printf("Image not found!"); return -1; } namedWindow("OpenCV Test", WINDOW_AUTOSIZE); imshow("OpenCV Test", img); waitKey(0); return 0; } ``` > 提示:右键图片文件 → 属性 → 安全 → 复制对象名称获取完整路径[^4]。 #### 常见问题解决 - **编译失败**:检查 CMake 日志中的错误,常见于网络问题导致第三方库下载失败(如 ffmpeg)。可手动下载缺失文件到 `opencv-4.11.0\.cache` 目录。 - **imread() 返回空**:确认图片路径使用双反斜杠(`\\`)或正斜杠(`/`),路径无中文/特殊字符。 - **链接错误**:确保项目属性平台(x64)和 OpenCV 编译平台一致。 ### 相关问题 1. **如何解决 OpenCV 编译时第三方库下载失败的问题?** 2. **在 CMake 配置中,`BUILD_opencv_world` 选项有什么优缺点?** 3. **如何将 OpenCV 集成到 Qt 项目中?** 4. **OpenCV 4.11.0 有哪些值得关注的新特性?** 5. **如何为 OpenCV 启用 GPU 加速(CUDA)支持?** [^1]: Win11中CMake+VS2022编译OpenCV+OpenCV_Contrib配置参考 [^2]: OpenCV 4.11.0 源码下载地址 [^3]: OpenCV_Contrib 4.11.0 扩展模块下载 [^4]: OpenCV 测试代码与路径处理技巧
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值