使用cmake构建CUDA对象文件

时间:2012-10-25 17:09:19

标签: build cuda cmake

我得到了以下设置。我将使用CUDA使用MPI和其他Stuff扩展用C ++编写的框架。该项目使用cmake进行建设。我想避免使用库来扩展我的cuda源代码文件。之后我想链接这些对象对象文件和其他编译器编译的其他文件。 有没有人对hwo有所了解?

我查看http://code.google.com/p/cudpp/wiki/BuildingCUDPPwithCMake以了解如何使用cmake使用CUDA,但此解决方案也使用了库。

1 个答案:

答案 0 :(得分:28)

可以使用较新版本的cmake附带的CUDA支持编译目标文件。您使用cuda_compile命令。见下文。

# CMakeLists.txt for G4CU project                                                                                                                                                                          
project(test-cuda-thrust-gdb)

# required cmake version                                                                                                                                                                                   
cmake_minimum_required(VERSION 2.8)

# packages                                                                                                                                                                                                 
find_package(CUDA)

# nvcc flags                                                                                                                                                                                               
set(CUDA_NVCC_FLAGS ${CUDA_NVCC_FLAGS};-gencode arch=compute_20,code=sm_20)

cuda_compile(HELPER_O helper.cu)
cuda_compile(DRIVER_O driver.cu OPTIONS -G)

cuda_add_executable(driver ${HELPER_O} ${DRIVER_O})

如果您需要更多信息,请查看FindCUDA.cmake文件。