Установка компилятора по умолчанию в CMake - PullRequest
35 голосов
/ 16 августа 2011

Я использую CMake версии 2.8 на WinXP SP3. Всякий раз, когда я запускаю свой скрипт CMakeLists по умолчанию, CMake использует компилятор Visual Studio 10. Я пытался сделать:

SET( CMAKE_CXX_COMPILER "C:/MinGW/bin/g++" )

без успеха. Как я могу установить MinGW в качестве компилятора по умолчанию, чтобы мне не пришлось беспокоиться о настройке компилятора в CMakeLists?

Ответы [ 3 ]

26 голосов
/ 16 августа 2011

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

В качестве обходного пути вы можете использовать сценарий пакетной оболочки с именем cmake.bat со следующим содержанием:

@cmake.exe -G "MinGW Makefiles" %*

Этот сценарий должен бытьпомещается в каталог в системном PATH и должен иметь приоритет над исполняемым файлом CMake cmake.exe.

Скрипт вызывает cmake.exe с MinGW в качестве генератора и передает ему все остальные параметры.

15 голосов
/ 16 августа 2011

Вам нужно всего лишь один раз установить формат цепочки инструментов / выходного файла, обычно вы делаете это при первом запуске cmake:

cmake -G "MinGW Makefiles" .

Вместо точки вы можете использовать свои собственные параметры (если есть) и / или путь к источнику.

В качестве альтернативы, особенно если вы новичок в CMake, используйте версию GUI под Windows (запустите cmake-gui без параметров вместо cmake).

После открытия укажите пути и нажмите «Настроить». Если компилятор не установлен, он попросит вас выбрать его (в противном случае вам придется очистить кеш, чтобы он снова появился).

Обновленные значения конфигурации будут выделены красным, и это также позволит вам выбирать файлы и пути, используя общие диалоговые окна Windows.

После завершения настройки и без ошибок вы можете нажать «создать», чтобы создать свои make-файлы или файлы проекта. Чтобы обновить их позже, вы можете использовать cmake-gui снова или просто использовать обычную версию командной строки cmake.

1 голос
/ 07 июня 2019

В CMake версии 3.15 или новее вы можете установить переменную окружения CMAKE_GENERATOR, чтобы указать генератор по умолчанию, который будет использоваться в вашей системе.

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