Cmake错误:无法加载缓存

rob*_*era 46 cmake

我正在使用Cmake尝试为Eclipse构建项目.当我尝试运行Cmake时,我收到以下错误:

Error: could not load cache
Error: Batch build stopped due to Eclipse CDT4 - Unix Makefiles error.
---- Time Elapsed: 3 secs ----
Error: could not load cache
Error: Batch build stopped due to Eclipse CDT4 - Unix Makefiles error.
Run Code Online (Sandbox Code Playgroud)

我完全不知道可能导致这种情况的原因.我知道我在正确的目录中运行Cmake并且存在CMakeCache.txt文件.有人能指出我正确的方向来解决这个问题吗?

小智 58

如果您使用的是CLion,可以使用File ---"Reload CMake Project".

使用git force pull后我遇到了这个问题,Reload CMake Project解决了这个问题.

  • 实际上现在它在选项卡“工具”>“CMake”>“重新加载”(...) (4认同)
  • 这就是解决方案。答案需要被接受。因此,用户可以节省时间,避免阅读其他答案。这总是有效的 (3认同)
  • 可以确认这两个位置仍然正确并且仍然是 2019.2.4 的有效解决方案 (2认同)

Mos*_*ael 33

我遇到了同样的问题并使用终端解决了它。

  1. 删除缓存/配置文件,因为我们将再次获取它们。
  2. 配置项目运行cmake .
  3. 使用构建项目cmake --build .

  • 这是最有用的答案。 (7认同)

小智 15

删除CMakeCache.txt,然后重试.你可能有一个糟糕的cmake设置.

  • 它正在[删除`CMakeCache.txt`](http://unix.stackexchange.com/questions/66480/cmake-error-the-current-directory-is-different-than)开始为我触发此错误. (14认同)

lit*_*tbe 14

我在使用 ubuntu 的 Windows WSL 上遇到此错误

~/tmp/cmake$ cmake --build ./build
Error: could not load cache
Run Code Online (Sandbox Code Playgroud)

我能够通过按顺序运行以下命令来修复上述错误:

% cmake -S . -B ./build 
% cmake --build ./build
Run Code Online (Sandbox Code Playgroud)

上述解决方案源自这篇文章


Reu*_*aul 10

我最近使用 JetBrains CLion 遇到了这个问题,上面的说明很有帮助,但不是直接的,我能够使用CMake选项卡中的“cog”下拉菜单重新加载项目:

在此处输入图片说明


rak*_*ahu 10

运行cmake --configure .它应该会生成所需的文件。

  • 我得到 `cmake --configure 。` <br/> `CMake 错误:未知参数 --configure` `CMake 错误:为所有支持的选项运行 'cmake --help'。` (8认同)

小智 5

在你的例子中 Eclipse 必须运行类似的东西

cmake --build folder_name --target all
Run Code Online (Sandbox Code Playgroud)

我认为在这种情况下 *folder_name* 是不好的。您可能在 Eclipse 中搞砸了一些事情。


cha*_*ami 5

如果您绝对肯定正在从二进制目录运行构建命令,则此错误可能意味着您在尝试构建之前应该运行的配置/生成步骤期间遇到了问题。您可以尝试再次配置检查(cmake your-build-dir)

我建议运行 Gui 并尝试加载缓存以查看是否出现更明确的错误(尽管我对此表示怀疑)。

另一种可能性是尝试创建一个新的干净构建目录并从那里获取它。