现在的位置: 首页 > 综合 > 正文

win7(64位) + vs2010 + opencv2.3.1 配置

2013年08月20日 ⁄ 综合 ⁄ 共 2007字 ⁄ 字号 评论关闭

目的:编译64位程序
折腾将近三天的,首先写一下失败的经历:
(1)windowsXP,vs2008,X64编译opencv2.1没能通过,cmake过了,vs2008基于X64平台编译没能通过。
(2)windowsXP,vs2008,X64编译opencv2.3.1,cmake就没能通过。
(3)windowsXP,vs2008,直接使用官方opencv2.3.1中的X64+2008配置,编译自己的程序,没能通过。
(4)win7,vs2008,直接使用官方opencv2.3.1中的X64+2008配置,编译自己的程序,debug下可以编译,不能运行,报错:配置不正确。release下可以编译运行。但不稳定,程序运行中遇到内存分配问题会break掉。
(5)win7,vs2008,X64编译opencv2.3.1,cmake就没能通过。
。。。。。。。。。。。。。。还有许多小的尝试都以失败告终,略。。。
似乎vs2008与win7家庭版不太兼容。
最后成功的解决方案:
win7 + vs2010 + opencv2.3.1(官方直接使用(不用自己编译))
转:http://blog.csdn.net/zackzhaoyang/article/details/6883996

1.先配置环境变量,这一步完成后,注销再登陆或者重启计算机后,环境变量才有用。

    设置方法为:右击计算机打开属性->高级系统设置,高级选项卡->环境变量

用户变量设置:变量:OPENCV,值:E:\opencv\build
                               变量:PATH,值:E:\opencv\build\x86\vc10\bin;E:\opencv\tbb30\bin\ia32\vc10( 注意,64位还是选ia32,按32位的配置)
      系统环境变量的path也要添加设置下(以前看教程好似都没有这一步的哦!)
       ;E:\opencv\build\x86\vc10\bin;E:\opencv\tbb30\bin\ia32\vc10(用分号隔开)

2.
开始给以后所有的项目进行配置。

    首先任意新建一个项目,我这里建的是名字为opencv的C++控制台程序。下来的设置比较特别,经过多次搜索才发现这样做最好。
视图->解决方案资源管理器->选择左侧控件下方的”属性管理器”
展开opencv,一直展开看到Microsoft.Cpp.Win32.user,对它右键选择属性。

然后对VC++目录下选项进行添加:(不要忘了前面的分号哦!)
    (1)可执行文件目录:
    ;E:\opencv\build\x86\vc10\bin;E:\opencv\tbb30\bin\intel64\vc10
    (2)Library Directories(库目录)
    ;E:\opencv\build\x86\vc10\lib;E:\opencv\tbb30\lib\intel64\vc10
    (3)Include Directories(包含目录)
E:\opencv\include\opencv;E:\opencv\include\opencv2;E:\opencv\build\include;E:\opencv\tbb30\include
3.下面对单个项目进行配置
    因为是对单个项目配置的,所以以后每生成一个使用OpenCV的项目都需要设置一次,因此保存好下面的路径。
项目->属性->连接器->输入
    在”附加依赖项”中进行添加。先对此界面左上角的”配置”选择上Debug,在附加依赖项中添加:(不要忘记分号哦!)
opencv_core231d.lib;opencv_highgui231d.lib;opencv_video231d.lib;opencv_ml231d.lib;opencv_legacy231d.l
把Debug换成Release(如果问你是否保存,则保存修改),再添加:(不要忘记分号哦!)
opencv_core231.lib;opencv_highgui231.lib;opencv_video231.lib;opencv_ml231.lib;opencv_legacy231.lib;opencv_i
231表示OpenCV的版本为2.3.1,其他版本的只要改下数字即可,VS2005,VS2008配置OpenCV也大同小异,例如2008要把VC10改成VC9等等

另:vs2010建立X64 plantform时要将create new project platforms选上(在property manager中就含有Rlease|X64了,以便设置其属性。否则没有),并copy
settings from win32(win32的可执行文件,头文件,包含库的设置就继承过来了)

抱歉!评论已关闭.