open cv2.1 在vs2008上的安装设置及一些问题

1,安装opencv时注意勾选 向所有用户添加path,不然要自己手动添加环境变量

验证接下来验证一下OpenCV是否正确安装,在命令控制台 中输入opencv_createsamples.exe

回车运行,安装正确的话,应该出现下面的提示:





如果提示没有找到程序的话,说明你的环境变量有问题,重新设置一下。


2,vs2008的设置,(复制自网上教程,[ ]中表示我的理解说明)

1. 安装完VS2008后,打开VC++ 2008 Express,菜单Tools -> Options -> Projects and Solutions -> VC++ Directories

2. Show directories for选择include files,加入目录:F:\OpenCV2.1\include\opencv

3. Show directories for选择library files,加入目录:F:\OpenCV2.1\lib



上面的F:\OpenCV2.1替换为你的OpenCV的安装目录,关闭VC++ 2008 Express。

到这里,设置就完成了。

利用OpenCV开发程序

1. 打开VC++ 2008 Express,创建一个Win32控制台程序template



2. 选择Solution Explorer里的template项目,点击鼠标右键,选择Properties,


3. 在[链接器LINKER]的[输入INPUT]中;

为项目的Debug配置增加依赖的库:

cv210d.lib cvaux210d.lib cxcore210d.lib highgui210d.lib ml210d.lib opencv_ffmpeg210d.lib

[ 只要添加cv210d.lib cxcore210d.lib highgui210d.lib三项就够了 ]



[ release可以不用配置 ]

为项目的Release配置增加依赖的库:

cv210.lib cvaux210.lib cxcore210.lib cxts210.lib highgui210.lib ml210.lib opencv_ffmpeg210.lib



【第四步可以省掉】

4. 配置属性-字符集修改为使用“多字节字符集”(由于2008默认是以Unicode字符集编译的)



5. 禁止编译头文件,选择“Not Using……”项,如下所示:【习惯建立工程时选择empty的,则第5、6步没必要】



6. 删除掉没用的文件,最终如下图所示:


上个例程试试能不能运行

#include "cv.h"
#include "highgui.h"
using namespace cv;

int main(){
	Mat m;
	m.create(400,600,CV_8U);
	namedWindow("1");
	imshow("1",m);
	waitKey();
	return 0;
} 


下面才是我的痛苦经历,

首先build后报这样的错

1>------ Build started: Project: test1, Configuration: Debug Win32 ------
1>Linking...
1>LINK : fatal error LNK1104: cannot open file 'msvcprtd.lib'
1>Build log was saved at "file://e:\opencv\test1\test1\test1\Debug\BuildLog.htm"
1>test1 - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


因为我用同样的安装文件在别人没有vs的机子上顺利运行,猜想可能是自己的软件出了问题,使用vs2008的修复功能,这时虚拟光驱竟然不给力,害我浪费了一张DVD光盘,刻了一张vs2008的盘

然后就成了这样的错

1>------ Build started: Project: test1, Configuration: Debug Win32 ------
1>Linking...
1>LINK : fatal error LNK1104: cannot open file 'kernel32.lib'
1>Build log was saved at "file://e:\opencv\test1\test1\test1\Debug\BuildLog.htm"
1>test1 - 1 error(s), 0 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


狠狠心,直接卸载重装。想要完全卸载2008还真不是件简单的事,太无耻了。。。反正我是没卸载完,重装后就变成了这样的错

1>c:\program files (x86)\opencv2.1\include\opencv\cvcompat.h(803) : warning C4819: The file contains a character that cannot be represented in the current code page (936). Save the file in Unicode format to prevent data loss
1>c:\program files (x86)\opencv2.1\include\opencv\highgui.h(49) : fatal error C1083: Cannot open include file: 'windows.h': No such file or directory
1>Build log was saved at "file://e:\opencv\test\examp\examp\Debug\BuildLog.htm"
1>examp - 1 error(s), 1 warning(s)
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========


好吧,连头文件都找不到了,我只能先玩几把真三去了


试着回到起点,编个入门级的cout<<"hello world"<<endl;好吧,又回到原来的问题上了, cannot open file 'msvcprtd.lib'

各种百度,感觉大家都说的不明不白的,最后解决方法:在tool-options - project and solution - c++directors - library files里添加了所有msvcprtd.lib文件的路径,


不幸的是又出现了新问题,程序执行时 找不到cxcore.dll,这个貌似和环境变量的path有关,反正重启后就消失了


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值