我很惊讶找不到这个谷歌搜索。我只找到this,但是我想知道如何找到通常使用的cmake编译器?我也找到了this,但我假设cmake中有一些变量仅保存编译器名称,对吗?
最佳答案
您可以在CMake的二进制输出目录CMakeFiles/[your CMake's version]/CMakeCXXCompiler.cmake
中查看可用的变量。
如果您只想打印它,那么您正在寻找 CMAKE_CXX_COMPILER_ID
和 CMAKE_CXX_COMPILER_VERSION
。这些可以跨平台使用。
这是CMake从我的项目中检测并生成的两个示例:
set(CMAKE_CXX_COMPILER_ID "GNU")
set(CMAKE_CXX_COMPILER_VERSION "4.6.3")
或者
set(CMAKE_CXX_COMPILER_ID "MSVC")
set(CMAKE_CXX_COMPILER_VERSION "19.0.24215.1")
还有其他类型的变量可以检查平台/工具链,例如
CMAKE_COMPILER_IS_GNUCXX
。关于c++ - 如何检查正在使用的编译器cmake?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/51154151/