27

我从源代码树上的 CMakeSetup 收到以下错误:

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。

4

1 回答 1

44

您的项目是否在顶部和基本 CMakeLists.txt 文件中声明,或者至少必须在需要之前声明,其中在顶部是最简单的。看来这是cmake中的一个错误。http://www.mail-archive.com/cmake@cmake.org/msg13392.html

IE

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)

...
于 2009-02-22T19:27:18.190 回答