配置教程
- 写在前面
- 配置
- mingw64+cmake
- opencv
- 环境变量
- vscode
写在前面
我个人比较喜欢用vscode写代码,以前是感觉写python很方便,后面即便要写C++也不想换编辑器了。相较于vs来说,在vscode上配置opencv的并不算多,在配置的过程中也踩了很多坑,因此写一篇博客记录一下,希望能有帮助。
在vscode上配置opencv之前,先默认已经能够在vscode上实现C++代码的编写和运行了,如果不可以的话,可以看这篇文章:VSCode+win10 C++多文件编译调试
配置
mingw64+cmake
mingw64在之前那篇文章里已经说过如何安装了,非常简单方便。这里就不再叙述。
对于cmake来说,可以直接在官网下载软件进行安装:cmake官网
下载完后,找出它的cmake-gui文件,打开如下:
opencv
在这里下载软件:opencv下载
选择自己想要的就行,我选的是opencv4.5.2,选择这个:
点击它之后会进行解压操作,放在自己想放的位置就行。
这个时候文件里应该是这样的:
我们返回到cmake-gui中,source code和binaries的路径选择如下:
注意的是,这里的MinGW是自己创建的,也就是是一个空的文件夹,你可以取任何名字,但注意的是,后续所有的配置和设置中,都别忘了把MinGW换成你自己取的名字。
然后点击Configure,出现如下界面,选择这些选项:
在选择next,把你之前mingw64下gcc和g++的路径放上去:
点击Finish。这个时候他就会开始自己配置,等到他配置完了之后,界面上应该是红色的,建议往下翻一番,找到BUILD_opencv_world,如果他选择了的话就把勾取消了,我这里是默认不选的:
然后再点一遍Configure
,配置完后,点击Generate
(注意,就算BUILD_opencv_world没被选也要再点一遍Configure)
生成完后,你打开刚刚创建的那个MinGW文件,会发现里面多了很多东西。你在这个文件夹下打开powershell,输入命令mingw32-make.exe,这个时候就会开始编译了。建议用多线程,比如mingw32-make.exe -j 4,这样会快一些。这边的时长大概在30min左右。
环境变量
编译完毕后,把以下三个环境变量添加进去:
有的系统需要重新启动才能生效,有的不需要,自行决定即可。
vscode
我们假设已经能够在终端上打印出“hello world”了(如果不可以,请看VSCode+win10 C++多文件编译调试),那么我们把这一段复制进去:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17#include <iostream> #include <opencv2/opencv.hpp> #include <opencv2/highgui.hpp> using namespace cv; using namespace std; int main() { cout<<"hello world..."<<endl; Mat img=imread("C:\Users\cxm\Desktop\test.png"); cv::imshow("image",img); cv::waitKey(); return 0; }
现在你运行肯定会出错的,因为还没有把opencv添进去。打开你的tasks.json,更改如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43{ "tasks": [ { "type": "cppbuild", "label": "C/C++: g++.exe 生成活动文件", "command": "D:\softwares\mingw64\bin\g++.exe", "args": [ "-fdiagnostics-color=always", "-g", "${file}", "-I", "D:\softwares\opencv\build\include", "-I", "D:\softwares\opencv\build\include\opencv2", "-L", "D:\softwares\opencv\build\x64\MinGW\lib", "-l", "libopencv_core452", "-l", "libopencv_imgproc452", "-l", "libopencv_imgcodecs452", "-l", "libopencv_video452", "-l", "libopencv_ml452", "-l", "libopencv_highgui452", "-l", "libopencv_objdetect452", "-l", "libopencv_flann452", "-l", "libopencv_imgcodecs452", "-l", "libopencv_photo452", "-l", "libopencv_videoio452", "-o", "${fileDirname}\${fileBasenameNoExtension}.exe" ], "options": { "cwd": "${fileDirname}" }, "problemMatcher": [ "$gcc" ], "group": { "kind": "build", "isDefault": true }, "detail": "调试器生成的任务。" } ], "version": "2.0.0" }
注意:
1. 如果你有自定义的头文件,依照按照之前那篇博客所说的方式添加进去
2. 注意我的编号都是452,你可以打开你的opencv\build\x64\MinGW\iib
文件,看一下你的编号是什么,这里一定一定一定要更改掉,千万不要一股脑就直接复制不管了!!!
3. 路径换成自己的
然后,你在.vscode下再创建一个文件叫c_cpp_properties.json,复制如下内容:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20{ "configurations": [ { "name": "win", "includePath": [ "${workspaceFolder}/**", "D:\softwares\opencv\build\include", "D:\softwares\opencv\build\include\opencv2" ], "defines": [], "compilerPath": "D:/softwares/mingw64/bin/gcc.exe", "cStandard": "c11", "cppStandard": "c++17", "intelliSenseMode": "clang-x64" } ], "version": 4 }
注意把路径换成的
这个时候,你再在main.cpp下运行,就没问题了
最后
以上就是干净发箍最近收集整理的关于【配置】win10+vscode+opencv4+mingw+cmake写在前面配置的全部内容,更多相关【配置】win10+vscode+opencv4+mingw+cmake写在前面配置内容请搜索靠谱客的其他文章。
发表评论 取消回复