CMake 错误:找不到 CMAKE_ROOT?

CMake 错误:找不到 CMAKE_ROOT?

我正在尝试使用 cmake 构建一个 github 项目,但遇到了很多麻烦。我正在创建一个构建目录并像这样调用 cmake:

cd github_project_directory
mkdir build
cd build
cmake ..

这是我收到的错误:

CMake Error: Could not find CMAKE_ROOT !!!
CMake has most likely not been installed correctly.
Modules directory not found in
/usr/bin
CMake Error: Error executing cmake::LoadCache(). Aborting.

我认为 cmake 的安装方式存在问题,但我似乎无法弄清楚。我尝试过卸载并重新安装,但……我认为这可能会带来更多麻烦。

我在使用 Ubuntu 14.04。很高兴根据需要提供更多信息。

谢谢你!

答案1

对于任何 cmake,包括,我都遇到了同样的错误,cmake --version并且“重新安装cmakecmake-data然后重新启动 shell”答案不起作用,所以我尝试手动设置为包含目录CMAKE_ROOT的路径。dpkg -L cmake-dataModules

export CMAKE_ROOT=/usr/share/cmake-3.5

它开始cmake --version工作了,这表明我正在以某种方式处理一个cmake报告自己为 cmake 2.x 的包,但是它为其资源cmake-data创建了一个文件夹。cmake-3.5

事实证明,我的一个 PPA 提供的 cmake 3.5 与 14.04 使用的 cmake 2.8 包名相同,由于依赖冲突,该cmake-data包已升级到 3.5,但该cmake包仍停留在 2.8 版本。

以下几行对我有用:

sudo apt-get remove cmake cmake-data
sudo apt-get install cmake3 cmake3-data

答案2

我必须重新安装我的 cmake 来纠正同样的错误。

sudo apt-get remove cmake cmake-data
sudo -E add-apt-repository -y ppa:george-edison55/cmake-3.x
sudo -E apt-get update
sudo apt-get install cmake

然后确保重新提供你的 rc 资源。

. ~/.bashrc

答案3

Runing. ~/.bashrc也帮我解决了这个问题。我的整个过程是 -

sudo apt remove cmake // as it was a old version and i needed new one
pip install cmake --upgrade
sudo apt autoremove
. ~/.bashrc

答案4

如果您在安装新的/更新的/不同的版本后遇到此问题cmake,请尝试运行hash -r

归功于https://stackoverflow.com/questions/18615451/cmake-missing-modules-directory

相关内容