Cuda cmake支持C++17
项目中cuda的编译需要使用到C++17的特性,但是自己在设置C++17的时候,一直不生效,最后找到一种生效的方式
1. 设置CMAKE_CUDA_STANDARD
cmake_minimum_required(VERSION 3.19)project(demo)set(CMAKE_CXX_STANDARD 17)
set(CMAKE_CUDA_STANDARD 17)
结果不行
2. 设置nvcc编译选项
cmake_minimum_required(VERSION 3.19)project(demo)set(CMAKE_CXX_STANDARD 17)
set( CUDA_NVCC_FLAGS "${CUDA_NVCC_FLAGS}" "-std=c++17" )
结果OK