如何使用 CMake 3.15 检查 NVCC 版本?
How to check the NVCC version with CMake 3.15?
如何使用 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 作为 cmake-3.XX
,我想你会简单地 运行 cmake
.
如何使用 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 作为 cmake-3.XX
,我想你会简单地 运行 cmake
.