Windows10下配置CodeBlocks+OpenCV+MinGW

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lwplwf/article/details/77369930

安装环境:
-Windows10 64位
-OpenCV 2.4.13
-MinGW 4.9.1
-CodeBlocks 16.01
-Cmake 3.9.1

  1. 下载MinGW(我是单独装mingw,没有用CodeBlocks 自带的mingw编译)
    https://nchc.dl.sourceforge.net/project/mingw-w64/Toolchains%20targetting%20Win64/Personal%20Builds/mingw-builds/4.9.1/threads-posix/seh/x86_64-4.9.1-release-posix-seh-rt_v3-rev0.7z

  2. 解压到指定目录

  3. 添加MinGW到系统环境变量
    此电脑–右键属性–高级系统设置–环境变量–系统变量中PATH–编辑–将E:\MinGW\bin加入到环境变量中,点击确定。具体路径根据自己安装时选的修改。
    这里写图片描述

  4. 下载安装OpenCV
    http://opencv.org/opencv-3-2.html
    .exe直接双击运行解压,生成下面文件
    这里写图片描述

  5. 下载安装CMake
    https://cmake.org/download/
    运行安装

  6. 运行CMake(cmake-gui)
    如图设置
    这里写图片描述
    此build_mingw文件夹需要自己在opencv目录下创建

    然后继续
    这里写图片描述

    点击Generate

  7. cmd进入到刚才那个生成代码的地方(E:\opencv\build_mingw),输入mingw32-make -j4,回车
    这里写图片描述

  8. 完成后输入 mingw32-make install,开始编译opencv源码
    这里写图片描述

  9. 下载安装codeblocks
    http://www.codeblocks.org/
    我装的是16.01

    安装完成后,打开CodeBlocks,会提示选择一个默认的编译器,选择Yes,associate Code::Blocks with C/C++ file types

  10. 新建OpenCV Project
    File–>New–>Project…–>Projects,选中console application,点击Next–>c++–>填写名称路径等->点击Next–>点击Finish,会默认生成一个main.cpp文件,编译运行即可。
    这里写图片描述

  11. 在CodeBlocks里配置OpenCV

    将编译好的install文件夹下的include文件夹、x64/mingw/bin、x64/mingw/lib三个文件夹拷贝到CodeBlocks新建的opencv文件夹里

    settings–>compilier
    这里写图片描述

    Project–>Build options…–>选中Debug,Linker settings–>Link libraries–>Add library将刚刚编译好的OpenCV下lib库添加进去
    这里写图片描述

    选择Search directories–>Compiler–>添加include和下面的2个文件夹目录
    这里写图片描述

    选择Search directories–>Linker–>添加bin
    这里写图片描述

    终于配置完成了

  12. 测试

#include <opencv2/core/core.hpp>
#include <opencv2/imgproc/imgproc.hpp>
#include <opencv2/highgui/highgui.hpp>

using namespace cv;

int main(int argc, char *argv[])
{
    Mat img = imread("wang.jpg", CV_LOAD_IMAGE_COLOR);
    if(img.empty())
       return -1;
    namedWindow( "wang", CV_WINDOW_AUTOSIZE );
    imshow("wang", img);
    waitKey(0);
    return 0;
}

这里写图片描述

没有更多推荐了,返回首页