用64位机器上的Visual Studio配置CUDA和OpenCV
问题描述:
自从过去1周以来,我一直试图在64位Windows XP机器上的Visual Studio 2008上配置OpenCV2.1和CUDA3.1。但一切都是徒劳的。用64位机器上的Visual Studio配置CUDA和OpenCV
单独的OpenCV工作正常。单独的CUDA3.1也正常工作。 我正在使用64位CUDA3.1 ...但对于OpenCV,我使用32位安装(在Source Forge上提供) - 可能的错误?
在当我配置OpenCV的设置,以及编译一个样本项目CUDA项目,我得到错误的以下文件:
cxcore.hpp cxoperations.hpp cxcore.hpp cxmat.hpp 和也CUDA构建规则。
以上所有文件都不是我自己写的;但是图书馆(我猜)。
任何方向在64位XP机器上安装CUDA,OpenCV over VS?
答
链接到您的应用程序的库应该已被编译到相同的拱门。你不能混合架构。
换句话说,你必须编译一切 - 您的应用程序,OpenCV的和CUDA - 被32bit的(或64位,如果你需要)。
我的建议是编译32位CUDA,然后更改项目的属性以将应用程序构建为32位(因为您已经拥有32位版本的OpenCV)。
编辑:
对于连接问题:
unresolved external symbol [email protected]
unresolved external symbol [email protected]
unresolved external symbol [email protected]
unresolved external symbol [email protected]
根据this post,这个库添加到您的项目设置:cufft.lib
答
我相信你需要构建Cmake的64位库 - 但我不确定。您肯定需要在x64中构建OpenCV以在Win XP x64安装上构建本机应用程序。如果OpenCV的构建出现错误,那么在尝试编译应用程序之前,您需要首先解决这些问题,而这些应用程序与尚未正确编译的OpenCV库相关联。
请发布Visual Studio报告的错误。你编译了一个64位版本的cmake来构建项目文件,还是只下载了32位二进制文件? – 2010-09-29 04:29:58
我刚刚使用Cmake的32位二进制文件。然后生成一个VS解决方案...为x64构建解决方案...但构建也显示错误。 – 2010-09-29 08:11:51