2011-04-01 103 views
1

我想要編譯喬斯塔姆下面的代碼(convolutionapproaches,用VS2005的項目,我使用VS2010但與9.0引擎編譯)CUDA - 鏈接錯誤與卷積例如

1> ConvolutionCudaFunctions.obj :錯誤 LNK2019:解析外部符號 _cudaEventDestroy @ 4在函數引用 「浮動_cdecl NaiveGlobalConvolution(無符號字符 *,無符號字符*,無符號整型,無符號整型,無符號 INT,INT,INT)」 (NaiveGlobalConvolution @? @ YAMPAE0IIIHH @ Z) 1> main.obj:錯誤LNK2001:無法解析 外部符號_cudaEventDestroy @ 4 1> ConvolutionCudaFunctions.obj:錯誤 LNK2019:解析外部符號 _cudaEventElapsedTime @在功能標記爲12「浮_cdecl NaiveGlobalConvolution(無符號字符 *,無符號字符*,無符號整型,無符號整型,無符號 INT,INT,INT)」 (NaiveGlobalConvolution @@ @ YAMPAE0IIIHH Z) 1> main.obj:錯誤LNK2001:無法解析 外部符號 _cudaEventElapsedTime @ 12 1> ConvolutionCudaFunctions.obj:錯誤 LNK2019:解析的外部符號 _cudaEventSynchronize @ 4在函數中引用「float _cdecl NaiveGlobalConvolu灰(無符號字符 *,無符號字符*,無符號整型,無符號整型,無符號 INT,INT,INT)」 (NaiveGlobalConvolution @@ YAMPAE0IIIHH @ Z?) 1> main.obj:錯誤LNK2001:無法解析 外部符號 _cudaEventSynchronize @ 4 1> ConvolutionCudaFunctions.obj:錯誤 LNK2019:解析外部符號 _cudaGetLastError @在函數引用0「浮動_cdecl NaiveGlobalConvolution(無符號字符 *,無符號字符*,無符號整型,無符號整型,無符號 INT,INT ,int)「 (?NaiveGlobalConvolution @@ YAMPAE0IIIHH @ Z) 1> ConvolutionCudaFunctions.obj:錯誤 LNK2019:未解析的外部符號 _cudaConfigureCall @在函數引用32 「浮_cdecl NaiveGlobalConvolution(無符號字符 *,無符號字符*,無符號整型,無符號整型,無符號 INT,INT,INT)」 (?NaiveGlobalConvolution @@ @ YAMPAE0IIIHH Z) 1 > ConvolutionCudaFunctions.obj:錯誤 LNK2019:解析外部符號 _cudaEventRecord @在函數引用8 「浮動_cdecl NaiveGlobalConvolution(無符號字符 *,無符號字符*,無符號整型,無符號整型,無符號 INT,INT,INT)」 (?NaiveGlobalConvolution @@ YAMPAE0IIIHH @ Z) 1> main.obj:錯誤LNK2001:無法解析 外部符號_cudaEv entRecord @ 8 1> ConvolutionCudaFunctions.obj:錯誤 LNK2019:解析外部符號 _cudaEventCreate @在功能標記爲4「浮動_cdecl NaiveGlobalConvolution(無符號字符 *,無符號字符*,無符號整型,無符號整型,無符號 INT,INT ,int) (?NaiveGlobalConvolution @@ YAMPAE0IIIHH @ Z) 1> main.obj:error LNK2001:unresolved 外部符號_cudaEventCreate @ 4 1> ConvolutionCudaFunctions。OBJ:錯誤 LNK2019:解析外部符號 _cudaMemset @在功能標記爲12 「浮_cdecl NaiveGlobalConvolution(無符號字符 *,無符號字符*,無符號整型,無符號整型,無符號 INT,INT,INT)」 (NaiveGlobalConvolution? @@ @ YAMPAE0IIIHH Z) 1> ConvolutionCudaFunctions.obj:錯誤 LNK2019:解析外部符號 _cudaSetupArgument @在功能標記爲12「空隙_cdecl device_stub__Z28NaiveGlobalConvolutionKernelPhS_jjjf(無符號 字符*,無符號字符*,無符號 整型,無符號整型, unsigned int,float)「 (?__ device_stub__Z28NaiveGlobalConvoluti onKernelPhS_jjjf @@ @ YAXPAE0IIIM Z) 1> ConvolutionCudaFunctions.obj:錯誤 LNK2019:解析的外部符號 ___ cudaRegisterVar @ 32在函數引用 「空隙_cdecl _ STI _cudaRegisterAll_59_tmpxft_00000a3c_00000000_3_ConvolutionCudaFunctions_cpp1_ii_imgTex(無效)」 (? sti_ _cudaRegisterAll_59_tmpxft_00000a3c_00000000_3_ConvolutionCudaFunctions_cpp1_ii_imgTex @@ YAXXZ) 1> ConvolutionCudaFunctions.obj:錯誤 LNK2019:解析的外部符號 ___ cudaRegisterTexture @ 28在函數引用「空隙_cdecl

...很多其他錯誤...

1>調試/ ConvTest.exe:致命錯誤 LNK1120:35解析的外部

用於/ MDd代碼生成和CUDA C/C++運行時主機庫。

如果我切換到/ MTd都是相同的。

這是怎麼回事?我想無論是32位和64位SDK,該工具包是6

+0

鏈接有鏈接到cudart.lib解決了嗎? – 2011-04-01 06:25:49

+1

看起來它沒有找到正確的cudart庫。你如何鏈接?什麼參數?你可以編譯SDK嗎?您使用哪些規則? – fabrizioM 2011-04-01 08:07:16

+0

我可以編譯sdk,並鏈接了cudart.lib,我安裝了64位版本的工具包,並且sdk在32/64版本中不起作用 – 2011-04-01 08:39:50

回答

0

有與32/64位的SDK的一個問題,我通過與32位