2009-02-20 4 views
21

나는 우리의 소스 트리에 CMakeSetup에서 다음과 같은 오류가 점점 오전 :분명히 손상된 CMake 빌드를 어떻게 수정합니까?

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

을 문제 있어야 CMakeLists 중 하나에 도움이되지 않는 캐시, 그래서 뭔가를 삭제할 수 있습니다. 기이 한 부분은 트리의 이전 버전에서 CMakeCache.txt를 복사하고 경로가 일치하도록 편집하면 CMake가 성공적으로 구성하고 ... 고정 캐시를 삭제 한 후에도 계속됩니다. 성공적으로 구성하십시오.

내가 뭘 찾아야 할까?

잘못된 CMakeCache.txt가 생성 될 때 두 개의 변수가 있습니다 (Project_BINARY_DIR 및 Project_SOURCE_DIR).

답변

33

프로젝트가 맨 위와 기본 CMakeLists.txt 파일에서 선언되었거나 맨 앞에 필요한 것이 선언되기 전에 선언되어야합니다. 맨 위에있는 것이 가장 쉽습니다. 이것은 cmake의 버그입니다. http://www.mail-archive.com/[email protected]/msg13392.html

추가, 프로젝트 정확하게 내 소스 트리의 깨진 버전에서 문제를

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

감사 고정 즉. – UltraNurd