我们一直在Linux上开发我们的代码,但是希望编译一个Windows可执行文件。旧的非GPU版本在Windows中使用mingw编译没有问题,因此我希望CUDA版本也可以这样做。
策略是在Visual Studio中使用nvcc编译内核代码,在mingw中使用gcc编译其余部分。
到目前为止,我们已经在Visual Studio中轻松编译了包含内核和内核启动的.cu文件。然而,我们仍然无法在mingw中编译C代码。C代码包含类似于cudaMalloc和cudaEvent_t的cuda api调用,因此我们必须包含cuda.h和cuda_runtime.h。然而,gcc对这些头文件给出了警告和错误,例如:
有什么想法可以把这些头文件包含进去并编译C代码?
策略是在Visual Studio中使用nvcc编译内核代码,在mingw中使用gcc编译其余部分。
到目前为止,我们已经在Visual Studio中轻松编译了包含内核和内核启动的.cu文件。然而,我们仍然无法在mingw中编译C代码。C代码包含类似于cudaMalloc和cudaEvent_t的cuda api调用,因此我们必须包含cuda.h和cuda_runtime.h。然而,gcc对这些头文件给出了警告和错误,例如:
../include/host_defines.h:57:0: warning: "__cdecl" redefined
并且
../include/vector_functions.h:127:14: error: 'short_4' has no member named 'x'
有什么想法可以把这些头文件包含进去并编译C代码?