【发布时间】:2021-09-09 18:06:48
【问题描述】:
如何使用 CMake 3.15(不是 3.17 或更高版本)检查 NVCC 的版本?
我想我可以编写自己的模块来使用--version 运行它,但是有更简单的方法吗?
【问题讨论】:
如何使用 CMake 3.15(不是 3.17 或更高版本)检查 NVCC 的版本?
我想我可以编写自己的模块来使用--version 运行它,但是有更简单的方法吗?
【问题讨论】:
在启用 CUDA 语言支持的 CMake 3.15 中,CMAKE_CUDA_COMPILER_VERSION 变量已定义并包含正确的版本。 MRE:
cmake_minimum_required(VERSION 3.15)
project(test LANGUAGES CUDA)
message(STATUS "CMAKE_CUDA_COMPILER = ${CMAKE_CUDA_COMPILER}")
message(STATUS "CMAKE_CUDA_COMPILER_ID = ${CMAKE_CUDA_COMPILER_ID}")
message(STATUS "CMAKE_CUDA_COMPILER_VERSION = ${CMAKE_CUDA_COMPILER_VERSION}")
输出:
$ cmake-3.15 -S . -B build
-- The CUDA compiler identification is NVIDIA 10.1.243
-- Check for working CUDA compiler: /usr/bin/nvcc
-- Check for working CUDA compiler: /usr/bin/nvcc -- works
-- Detecting CUDA compiler ABI info
-- Detecting CUDA compiler ABI info - done
-- CMAKE_CUDA_COMPILER = /usr/bin/nvcc
-- CMAKE_CUDA_COMPILER_ID = NVIDIA
-- CMAKE_CUDA_COMPILER_VERSION = 10.1.243
-- Configuring done
-- Generating done
-- Build files have been written to: /home/alex/test/build
我以cmake-3.XX 安装了各种版本的CMake,我假设您只需运行cmake。
【讨论】: