編譯出現下面錯誤
Error7 error LNK2019: unresolved external symbol"void __cdecl swap_rb_caller(struct cv::cuda::PtrStepSz<structuchar3> const &,struct cv::cuda::PtrStep<struct uchar3>,
struct CUstream_st *)"(?swap_rb_caller@@YAXAEBU?$PtrStepSz@Uuchar3@@@cuda@cv@@U?$PtrStep@Uuchar3@@@23@PEAUCUstream_st@@@Z)referenced in function
"void __cdecl swap_rb(classcv::cuda::GpuMat const &,class cv::cuda::GpuMat &,classcv::cuda::Stream &)"(?swap_rb@@YAXAEBVGpuMat@cuda@cv@@AEAV123@AEAVStream@23@@Z)
C:\Users\asus-pc\Documents\Visual Studio2013\Projects\gpuMat\gpuMat\swap_rb.obj gpuMat
Error7 error LNK2019: unresolved external symbolswap_rb_caller referenced in function swap_rb C:\Users\asus-pc\Documents\VisualStudio 2013\Projects\gpuMat\gpuMat\swap_rb.obj gpuMat
Error4 error LNK2019: unresolved external symbolcudaInverseImg referenced in function main C:\Users\asus-pc\Documents\VisualStudio 2013\Projects\opencv_cuda_iplimage\opencv_cuda_iplimage\app.obj opencv_cuda_iplimage
分析:
由於新建工程中沒有配置好CUDA編譯器問題。
需要重新新建工程。如:
1、打開vs2013並創建一個空win32程序,創建一個cuda_samples的解決方案和cuda_test1項目:
2、右鍵源文件–>添加–>新建項,如下圖所示:
3、選擇NIVIDIA CUDA 8.0中 CUDAC/C++file,並在名稱那填上cuda_main
4、選擇cuda_test1,點擊右鍵–>項目依賴項–>自定義生成
5、選擇CUDA 8.0
6、點擊cuda_main.cu的屬性
7、在配置屬性–>常規–>項類型–>選擇“CUDA C/C++”
後面的項目配置詳細見上個博客