OpenCV在vc6.0环境编译,可进入调试

进入安装OpenCV路径,进入_make文件, 看到了opencv.dsw 和 opencv.sln (不是opencv_directshow.dsw,它不包含cvaux.h), 前者在vc6.0版本编译,后者在vs2005中编译。

选择Win32 Debug进行编译,这一点我刚开安装时,一直没在意,自己的vc6.0软件环境有很多编译版本,什么i7等很多,导致了我编译一直没有成功,这是原因之一;

编译过程中有一个很语法错误,这是源码中自带的错误,这个我一直还没注意,怪不得没编译成功。也主要是要编译的文件比较多,还没分析好,这是没有成功的最重要原因。



链接:

粘贴:

据说这是个古老的bug

在cvaux.h文件中,

搜索关键字foreground_regions,

第1137行
CvMemStorage* storage; /*storage for 揻oreground_regions?/ \
CvSeq* foreground_regions /*foreground object contours*/

改为如下形式:

CvMemStorage* storage; /*storage for foreground_regions*/ \
CvSeq* foreground_regions /*foreground object contours*/

这样错误就消失了.开源的果然有bug呀.真是需要不断探索了

而且每一行后面的这些"\"是表下一行是上一行的接续.如

define可以替代多行的代码,例如MFC中的宏定义(非常的经典)

#define MACRO(arg1, arg2) do { \
/* declarations */ \
stmt1; \
stmt2; \
/* ... */ \
} while(0) /* (no trailing ; ) */
关键是要在每一个换行的时候加上一个"
\"




哎, 都古老错误了,我还没注意到!



但是选择Rebuild All时,不知怎回事,highgui的动态链接库没有生成功。直接只对该类重新编译了,有了,至此都编译成功。终于可以进入调试了。


另外,如果你拷贝到了其他路径来完成的编译,当然要在vc6.0中指明库文件放置地方。

环境变量也要更改bin文件所在的路径。



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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值