2009-02-20 6 views
21

otrzymuję następujący błąd z CMakeSetup na naszym drzewie źródłowym:Jak naprawić pozornie uszkodzoną kompilację CMake?

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

Usuwanie cache nie pomaga, więc coś w jednej z CMakeLists musi być problemem. Najdziwniejsze jest to, że jeśli skopiuję plik CMakeCache.txt ze starej wersji drzewa i dokonam edycji w taki sposób, aby ścieżki były zgodne, program CMake pomyślnie skonfiguruje ... i nawet po usunięciu tej stałej pamięci podręcznej będzie kontynuował skonfigurować pomyślnie.

Jakiś pomysł, na co powinienem zwrócić uwagę?

Brak dwóch zmiennych w złym CMakeCache.txt po jego wygenerowaniu: Project_BINARY_DIR i Project_SOURCE_DIR.

Odpowiedz

33

Czy Twój projekt został zadeklarowany na górze i w twoim bazowym pliku CMakeLists.txt lub przynajmniej musi zostać zadeklarowany zanim będzie potrzebny, z czego na górze jest najłatwiej. Wygląda na to, że jest to błąd w cmake. http://www.mail-archive.com/[email protected]/msg13392.html

tj

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

Dzięki PROJECT dodając dokładnie problem został rozwiązany w rozbitych wersji mojego drzewa źródłowego. – UltraNurd

Powiązane problemy