2009-02-20 6 views
21

Je reçois l'erreur suivante de cmakesetup sur notre arbre source:Comment réparer une build CMake apparemment corrompue?

CMake Error: Error required internal CMake variable not set, cmake may be not be built correctly. 
Missing variable is: 
CMAKE_FIND_LIBRARY_PREFIXES 

La suppression du cache ne fonctionne pas, donc quelque chose dans l'un des CMakeLists doit être le problème. La partie bizarre est, si je copie dans un CMakeCache.txt d'une vieille version de l'arbre, et l'édite de sorte que les chemins correspondent, CMake se configurera alors avec succès ... et, même après la suppression de ce cache fixe, il continue à configurer avec succès.

Toute idée de ce que je devrais chercher?

Il y a deux variables manquantes de la mauvaise CMakeCache.txt quand il est généré: Project_BINARY_DIR et Project_SOURCE_DIR.

Répondre

33

Est-ce que votre projet est déclaré en haut et dans votre fichier CMakeLists.txt de base ou, à tout le moins, cela doit être déclaré avant d'être nécessaire, dont la partie supérieure est la plus facile. Il semble que ce soit un bug dans cmake. http://www.mail-archive.com/[email protected]/msg13392.html

à savoir

PROJECT(inkscape) 

SET(INKSCAPE_VERSION 0.46+devel) 
SET(PROJECT_NAME inkscape) 
CMAKE_MINIMUM_REQUIRED(VERSION 2.4.6) 
SET(CMAKE_INCLUDE_CURRENT_DIR TRUE) 

... 
+0

Merci, ajoutant PROJECT précisément résolu le problème dans les versions brisées de mon arbre source. – UltraNurd

Questions connexes