opencv2.4.9+VS2013+64位电脑,release出错问题

       本人是个新手,但是最近在opencv配置和打包成setup时,遇到了些问题,当时在网上找解决方案,有人提出过问题,但是帖子发了就沉了,几乎没人回答出来。可能是问题并不凸显,遇到的较少,不过为了后人学习方便,我在此做个小结。

       错误情况如下:opencv2.4.9这个版本是同学推荐的,据说相对经验贴较多,出了问题好找。VS2013纯属个人下载安装之后,不想再换了,所以采用的这个较高版本,不过个人还是推荐VS2010,还是因为用的人多,经验较多,学习方便。 现在还是回到2013下的配置问题,这个问题,网上一搜就有,百度经验也有http://jingyan.baidu.com/article/75ab0bcbee4b47d6864db2fc.html,我不多说,但是在一些配置经验上,提到了,不管是64位系统还是32位系统,都选择X86,不选X64,而并没有说明原因。

       那么接下来,对上面提到的百度经验里面的配置做个补充,然后说说X64何时用。这个经验贴被转了很多地方,里面有个小问题,我最初配置的时候,完全按照上面所说,结果,刚配置好,没什么问题,因为一直在用debug,没用release,所以问题没有显现出来。当用到release编译时,

出现了如下问题:。我的解决办法是:debug还是如上的配置,但是在配置release时,右击VS的属性管理器里面的Release|win32(Release|x64同理),打开属性,在Release属性页里面的VC++目录里,将 可执行文件目录 中添加D:\Applications\opencv\opencv\build\x86\vc12\bin这个地址,视自己安装目录而定。 也就是说在配置debug和release时,是有这一点区别的,debug中可以不用对可执行文件目录 添加这一路径,但是release必须添加。

        其次是到底选择x86还是x64的问题。我的理解和尝试如下:如果你是32位的系统,那么只能选择x86,并且在VS中写好程序,准备debug过release编译(或编译+运行)时,选择如下在解决方案下的源文件的cpp文件上右击,选择属性,

平台选择Win32,这样你编译用的是32位的编译器,并且也是能够在32位的电脑上运行编译出来的exe(前提是程序执行所需要的文件,尤其是各种.dll文件和图片放在一起)。

如果你是64位的系统,那么你在编译时,平台可以选择x64或者Win32,但是,注意,因为网上的帖子有一部分中,在opencv配置的时候,说到了,无论是64位系统还是32位,都选择x86的配置,如库目录:D:\Applications\opencv\opencv\build\x86\vc12\lib,那么,如果当时只配置了debug和release的Win32,此时想用64位的编译器编译,那么必须在VS的属性管理器中对debug和release|x64进行配置, 配置内容和Win32相同,只是在可执行文件目录 和库目录中的添加路径为D:\Applications\opencv\opencv\build\x64\vc12\bin 和D:\Applications\opencv\opencv\build\x64\vc12\lib全部是x64的。

另一个问题是利用VS2013对编好的OPENCV程序打包生成安装软件中遇到的问题,这在下面的文章中介绍。


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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

SunnyFish-ty

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值