文件结构如下:
将cuda编程的文件和头文件都放在cuda文件夹中,使条目清晰一些。
在cuda的CMakeLists.txt
project(gpu) # required cmake version
cmake_minimum_required(VERSION 2.8) # packages
find_package(CUDA)
set(CUDA_NVCC_FLAGS -O3;-G;-g)
#include_directories(${EIGEN3_INCLUDE_DIRS})
file(GLOB_RECURSE CURRENT_HEADERS *.h *.hpp *.cuh)
file(GLOB CURRENT_SOURCES *.cpp *.cu)
source_group("Include" FILES ${CURRENT_HEADERS})
source_group("Source" FILES ${CURRENT_SOURCES})
cuda_add_library(gpu STATIC ${CURRENT_HEADERS} ${CURRENT_SOURCES})
在主文件的CMakeLists.txt中需要加上生成的链接:
add_subdirectory(cuda)
target_link_libraries(${PROJECT_NAME}
gpu
)
即可。