2010-09-28 30 views
0

自從過去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?

+0

請發佈Visual Studio報告的錯誤。你編譯了一個64位版本的cmake來構建項目文件,還是隻下載了32位二進制文​​件? – 2010-09-29 04:29:58

+0

我剛剛使用Cmake的32位二進制文​​件。然後生成一個VS解決方案...爲x64構建解決方案...但構建也顯示錯誤。 – 2010-09-29 08:11:51

回答

3

鏈接到您的應用程序的庫應該已被編譯到相同的拱門。你不能混合架構。

換句話說,你必須編譯一切 - 您的應用程序,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

0

我相信你需要構建Cmake的64位庫 - 但我不確定。您肯定需要在x64中構建OpenCV以在Win XP x64安裝上構建本機應用程序。如果OpenCV的構建出現錯誤,那麼在嘗試編譯應用程序之前,您需要首先解決這些問題,而這些應用程序與尚未正確編譯的OpenCV庫相關聯。

相關問題