cuda&visual studio的cmake设置

时间:2018-06-24 07:13:42

标签: cmake cuda

如何为enable_language(CUDA)设置自定义CUDA目录?

从cmake 3.8版本开始,我可以使用enable_language(CUDA)命令。

在我的自定义cmake文件中,我将CUDA_TOOLKIT_ROOT_DIR设置为cuda自定义目录(不是默认目录)。

但是,当调用enable_language(CUDA)命令时,cmake默认模块将尝试在默认目录(c:\ progrmafiles中的某个位置)中查找CUDA。

我不想让我的队友单独安装CUDA工具包。

所以我想在自定义目录中包括使用CUDA的所有必要组件和工具。

我该怎么做?

目标环境信息

OS windows 7 x64 (only)

IDE visual studio 2013

cmake version 3.11.4

CUDA version 9.2

1 个答案:

答案 0 :(得分:3)

如果我查看CMakeDetermineCUDACompiler.cmake,则可以通过以下方式为enable_language(CUDA)选择特定的编译器:

  1. 环境变量CUDACXX(适用于非“ Visual Studio”环境)

    > cmake -E env CUDACXX="<your CUDA path here>" cmake ..
    
  2. 只需设置全局变量CMAKE_CUDA_COMPILER

    > cmake -D CMAKE_CUDA_COMPILER:FILEPATH="<your CUDA path here>" ..
    

    或在您的CMakeLists.txtproject()之前的enable_language()中 呼叫

    if (NOT CMAKE_CUDA_COMPILER)
        set(CMAKE_CUDA_COMPILER "${CMAKE_SOURCE_DIR}/<your CUDA relative path here>")
    endif()