64位 vs2010 和 opencv2.4.4 配置问题

如果配置不对会出现各种问题,如下:

应用程序无法正常启动(0xc000007b);

error MSB6006: “CL.exe”已退出,代码为 5;

模块计算机类型“X86”与目标计算机类型“x64”冲突;

error C2365: “XXX”: 重定义;以前的定义是“数据变量”;

error LNK2019: 无法解析的外部符号 XXXX等等。

 

又重新安装了一遍vs2010,重新配置,注意配置问题。

在系统变量Path中加入opencv的bin,我的为:D:\Program Files (x86)\OpenCV244\opencv\build\x64\vc10\bin;

打开vs2010,建立一个win32项目,右键项目属性,vc++目录中添加:

 include:   D:\Program Files %28x86%29\OpenCV244\opencv\build\include

D:\Program Files %28x86%29\OpenCV244\opencv\build\include\opencv

D:\Program Files %28x86%29\OpenCV244\opencv\build\include\opencv2

lib:    D:\Program Files %28x86%29\OpenCV244\opencv\build\x64\vc10\lib

如果从父级或项目默认设置继承框里面有不需要的将属性管理器中Microsoft.cpp.win32.user删除,这样以前配置的路径就没有了。

打开菜单栏中“视图”->"属性管理器"(如果没有选择“其他窗口”->“属性管理器”),显示如下:

其中的debug和release是自己添加上去的,debug右键属性,添加附加依赖项:

opencv_calib3d244d.lib
opencv_contrib244d.lib
opencv_core244d.lib
opencv_features2d244d.lib
opencv_flann244d.lib
opencv_gpu244d.lib
opencv_highgui244d.lib
opencv_imgproc244d.lib
opencv_legacy244d.lib
opencv_ml244d.lib
opencv_objdetect244d.lib
opencv_ts244d.lib
opencv_video244d.lib
opencv_nonfree244d.lib

release右键属性,添加附加依赖项:

opencv_calib3d244.lib
opencv_contrib244.lib
opencv_core244.lib
opencv_features2d244.lib
opencv_flann244.lib
opencv_gpu244.lib
opencv_highgui244.lib
opencv_imgproc244.lib
opencv_legacy244.lib
opencv_ml244.lib
opencv_objdetect244.lib
opencv_ts244.lib
opencv_video244.lib
opencv_nonfree244.lib

以后可以保存这两项,每次新建项目时直接加入就不用每次都添加附加项这么麻烦了。

这事点击运行,会报错:模块计算机类型“X86”与目标计算机类型“x64”冲突

这时点击vs2010界面上的win32

选择X64,如果没有就点击配置管理器,新建一个X64。

点击运行就可以了。

 

你可能感兴趣的:(C++,VS2010,64位,OpenCV2.4.4)