CMAKE_MAKE_PROGRAM не найден

Я дошел до конца моей веревки с Cmake; у него такой большой потенциал, но я не могу заставить его найти основные системные инструменты (например, «make») для работы.

СИМПТОМЫ

Cmake и графический интерфейс Cmake создают следующее (после удаления CMakeCache. txt):

Processing top-level CMakelists.txt for project swb
CMake Error: CMake was unable to find a build program corresponding to "MinGW Makefiles".
CMAKE_MAKE_PROGRAM is not set.  You probably need to select a different build tool.

Я сосредотачиваюсь на поиске "make" в этом вопросе, однако у меня также были многие из тех же проблем, когда CMake не мог найти библиотеки и другие служебные файлы (компоновщик, nm, ar и т. д.) ). Приведенные ниже методы позволяют CMake находить эти файлы при работе под Linux.

СИСТЕМА

Windows 7 (64-разрядная); несколько версий MinGW (32-бит / 64-бит); Cmake 2.8.4; НЕСТАНДАРТНОЕ место установки MinGW (c: / MinGW-32).

ЧТО Я ПРОВЕРИЛ

  1. CMakelists.txt содержит "SET (CMAKE_MAKE_PROGRAM c: /MinGW-32/bin/make.exe FORCE)" в первом 10 строк файла.

  2. Предыдущие версии CMakelists.txt содержали:

     find_program (CMAKE_MAKE_PROGRAM
     ИМЕНА делают
     make.exe
     DOC "Найдите подходящую программу make для сборки под Windows / MinGW"
     ПОДСКАЗКИ c: / MinGW-32 / bin) 
    
  3. Задайте CMAKE_MAKE_PROGRAM в переменной среды cmd.exe перед запуском CMake или CMake-GUI.

  4. Использование файла «цепочки инструментов», который идентифицирует CMAKE_MAKE_PROGRAM, а также CMAKE_C_COMPILER и т. Д.

ОДНА ЧТО СЛУЧАИЛА

CMake успешно создаст файлы сборки, ЕСЛИ я использую графический интерфейс для заполнения переменной CMAKE_MAKE_PROGRAM ("C: /MinGW-32/bin/make.exe").

ВОПРОС (S)

Я могу получить CMake работать, если я идентифицирую имя программы make через графический интерфейс. Как включить CMake для поиска моей программы make без вмешательства пользователя с помощью комбинации Windows 7 (64-разрядная) / MinGW?

58
задан Ahmed Ashour 23 May 2019 в 14:17
поделиться