Как проверить, какой компилятор использует cmake? - PullRequest
0 голосов
/ 03 июля 2018

Я удивлен, что не смог найти этот гугл. Я нашел только this , но я хочу знать, как найти компилятор, который вообще использует cmake? Я также нашел this , но я предполагаю, что в cmake есть некоторая переменная, которая просто содержит имя компилятора, верно?

Ответы [ 2 ]

0 голосов
/ 03 июля 2018

Вы можете видеть, какие переменные доступны в директории двоичного вывода вашего 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.

0 голосов
/ 03 июля 2018

Я не совсем уверен, правильно ли я понял ваш вопрос, но если вы просто хотите узнать, какой компилятор используется, включите подробную сборку с параметром CMAKE_VERBOSE_MAKEFILE:

cmake .. -DCMAKE_VERBOSE_MAKEFILE=ON

и затем запустите make как обычно. Это покажет, какие команды используются для построения вашего кода.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...