临时更换成了TDM-GCC,和mingw类似,这里只是声明一下。
由于opencv下载下来的.exe安装包实际上是没有mingw(gcc)匹配的/动静态库,因此这些东西需要我们自己使用mingw编译。
首先是cmake配置,直接在source目录命令行下执行 cmake . 即可(注意后边有空格和代表当前目录的点号)
一般来说应该可以了,然后就是使用mingw32-make命令完成编译(过程较长),最后是使用mingw32-make install 生成需要的文件(头文件/动/静态库)
C:.
├─include
│ ├─opencv
│ └─opencv2
│ ├─calib3d
│ ├─contrib
│ ├─core
│ ├─features2d
│ ├─flann
│ ├─gpu
│ │ └─device
│ │ └─detail
│ ├─highgui
│ ├─imgproc
│ ├─legacy
│ ├─ml
│ ├─nonfree
│ ├─objdetect
│ ├─ocl
│ ├─photo
│ ├─stitching
│ │ └─detail
│ ├─superres
│ ├─ts
│ ├─video
│ └─videostab
└─x86
└─mingw
├─bin
└─lib
将bin加入系统path变量中。
然后是clion的cmakelist.txt编写如下,这是使用的最简单的一些库,稍后也可以自己加入。
cmake_minimum_required(VERSION 3.2)
project(opencv)
set(CMAKE_CXX_FLAGS "-std=c++11")
include_directories(C:\\\\opencv\\\\include)
set(SOURCE_FILES main.cpp)
set(TARGET_LIBS
"C:\\\\opencv\\\\x86\\\\mingw\\\\lib\\\\libopencv_core249.dll.a"
"C:\\\\opencv\\\\x86\\\\mingw\\\\lib\\\\libopencv_highgui249.dll.a"
"C:\\\\opencv\\\\x86\\\\mingw\\\\lib\\\\libopencv_imgproc249.dll.a"
)
add_executable(opencv ${SOURCE_FILES})
target_link_libraries(opencv ${TARGET_LIBS})
然后是编写测试代码,
1 #include "iostream"
2 #include
3 using namespacestd;4 using namespacecv;5
6 int main(int argc,char *argv[]) {7 if(argc!=2){8 cout<
19 return 0;20 }
运行参数设置为lena.png
运行一次先产生debug目录,然后将lena.png转移到那个目录去就可以正确看到了:
原文:http://www.cnblogs.com/lhyz/p/4621987.html