感受:折腾了好久想骂街!
先搞定debug模式32位平台的配置,再搞64位release模式的配置;
1,下载OpenCV3.0.0.exe,并解压,得到build和sources两个文件夹;
2,配置包含目录如图所示:视图→其他窗口→属性管理器→Debug|Win32。双击Cpp.Win32.user打开属性窗口,点击VC++目录,在包含目录里面新建添加OpenCV的include、opencv、opencv2三个包含目录。
3,配置库目录,添加build文件夹下的x86/vc12/lib和staticlib两个文件夹目录到库目录里面。
4,编写测试代码,生成一下。
#include "stdafx.h"
#include <iostream>
#include <opencv2/opencv.hpp>
#include <string>
using namespace std;
using namespace cv;
int main(int argc, char** argv)
{
Mat image = imread("c:\\a.png");
if (image.empty())
{
cout << "error" << endl;
return -1;
}
imshow("aaa", image);
waitKey();
}
生成成功!先别美!启动的时候报错,找不到dll文件。
5,此时将opencv目录build/x86/vc12下的opencv_ffmpeg300.dll、opencv_world300.dll、opencv_world300d.dll三个文件复制到C:\Windows\SysWOW64 目录下,
再次运行,成功。
切换到Release、x86模式再次调试运行,成功。
6,继续在属性管理器里面配置Debug|x64的包含目录和库目录。切换到Debug、x64模式再次运行,报错找不到dll文件。
此时将opencv目录build/x64/vc12下的opencv_ffmpeg300_64.dll、opencv_world300.dll、opencv_world300d.dll三个文件复制到C:\Windows\System32 目录下,再次运行,成功。
切换到Release、x64模式再次调试运行,成功。
注:此种配置无需设置环境变量path的opencv路径。
如果报错“找不到gdi32.lib”,就先用everything查找电脑中gdi32.lib的文件位置。
然后将该文件所在的路径添加到x64的库目录里面去。