Ошибки Ubuntu cmake после обновления
Я получил ошибки после обновления cmake до версии 3.12.1
CMake Error at /usr/local/share/cmake-3.12/Modules/CMakeDetermineSystem.cmake:174 (file):
file attempted to write a file:
/home/wow/TrinityCore/CMakeFiles/CMakeOutput.log into a source directory.
Call Stack (most recent call first):
CMakeLists.txt:19 (project)
CMake Error: CMake was unable to find a build program corresponding to "Unix Makefiles". CMAKE_MAKE_PROGRAM is not set. You probably need to select a different build tool.
CMake Error: CMAKE_C_COMPILER not set, after EnableLanguage
CMake Error: CMAKE_CXX_COMPILER not set, after EnableLanguage
-- Configuring incomplete, errors occurred!
Марка установлена
GNU Make 3.81
Copyright (C) 2006 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
This program built for x86_64-pc-linux-gnu
G ++ тоже. Ubuntu версия 14.04.5
любая помощь или идеи?
Спасибо!
0 ответов
Как уже отмечалось в комментариях, сообщение
file attempted to write a file ... into a source directory
является результатом CMAKE_DISABLE_SOURCE_CHANGES
переменная, установленная в проекте CMakeLists.txt
. Этот параметр активирует проверку того, что проект CMake не будет создавать никаких файлов в исходном каталоге. (Более точное описание настройки этой переменной см. В этом ответе).
Обычно установка CMAKE_DISABLE_SOURCE_CHANGES
переменная сопровождается установкой CMAKE_DISABLE_IN_SOURCE_BUILD
переменная, имеющая буквальное значение:
Проект НЕ должен быть встроен в исходный код.
Решение состоит в том, чтобы собрать проект вне исходного кода, в каталоге сборки, который отличается от исходного.
Например, так:
cd <project-dir>
mkdir build
cd build
cmake ..