我为opencv编写了一个简单的测试程序,看看它是否在我在Visual Studio 2010专业版中编译我的OpenCV 2.4之后才能正常工作。
程序是这样的:
#include "StdAfx.h"
#include <opencv2/highgui/highgui.hpp>
#include <iostream>
using namespace cv;
using namespace std;
int main()
{
Mat im = imread("c:/full/path/to/lena.jpg");
if (im.empty())
{
cout << "Cannot load image!" << endl;
return -1;
}
imshow("Image", im);
waitKey(0);
}
问题是程序编译没有问题(我已经设置了所有的lib路径并在visual studio中包含路径),但是当我尝试运行它时,它给了我以下错误消息winow: “程序无法启动,因为您的计算机缺少opencv_core240d.dll。请尝试重新安装该程序以解决此问题”
现在,我已经读过这可以通过执行cmd命令将windows PATH变量设置为实际.dll文件所在的目录来解决:
SET PATH="C:\Program Files (x86)\OpenCV\opencv\build\bin\Debug"
指定的路径确实是.dll文件所在的路径,但是我仍然得到错误。
帮助真的很值得赞赏,因为我花了太多时间来解决这个问题......
答案 0 :(得分:4)
您必须从设置PATH的同一命令行运行程序(当然,在设置路径之后)。
如果您尝试从其他地方运行它,则应设置PATH环境。控制面板中的变量 - &gt;系统优先(*),然后重新启动命令行/ IDE以使新PATH生效
(*)控制面板 - &gt;系统 - &gt;高级系统设置 - &gt; Windows 7上的环境变量