无法更新 CMake
Posted
技术标签:
【中文标题】无法更新 CMake【英文标题】:Can't update CMake 【发布时间】:2018-03-15 19:11:13 【问题描述】:我尝试获取最新版本的 CMake,因为 OpenSUSE 卡在 3.5.2。
version=3.10
build=2
mkdir ~/temp
cd ~/temp
wget https://cmake.org/files/v$version/cmake-$version.$build.tar.gz
tar -xzvf cmake-$version.$build.tar.gz
cd cmake-$version.$build/
./bootstrap
make -j3
sudo make install
但是有些事情悄悄地出错了:
VM-LINUX:~/temp/cmake-3.10.2 # cmake --version
CMake Error: Could not find CMAKE_ROOT !!!
CMake has most likely not been installed correctly.
Modules directory not found in
/usr/local/share/cmake
cmake version 3.5.2
CMake suite maintained and supported by Kitware (kitware.com/cmake).
所以我尝试了另一种方法:更改更新存储库中的版本!然后我发现 che CMake 包在 OpenSUSE 42.3 中卡在 3.5.2 版本。
如何添加存储库以便始终拥有最新版本?
我是 Linux 的新手。
【问题讨论】:
【参考方案1】:从Git 安装 CMake 3.12 时,我遇到了关于 CMAKE_ROOT 的相同错误。我的解决方案是运行:
sudo ln -s /usr/local/share/cmake-3.12 /usr/local/share/cmake
因为某些原因它安装在 cmake-3.12 目录而不是 cmake 目录中。
【讨论】:
【参考方案2】:我假设你在关注"How do I install the latest version of cmake from the command line?"。
我遇到了同样的问题,您的问题/解决方案可以在 cmets 中找到:
当我运行这个时,我得到一个错误 CMake Error: Could not find
CMAKE_ROOT
!!!并且它未能更新 cmake。 – 蒂莫西·斯旺 2017 年 12 月 25 日 21:47这不是
UPDATE
的解决方案,而是INSTALL
cmake 的解决方案。试试这个命令或用谷歌搜索找到解决方案:sudo apt-get remove cmake cmake-data
- Teocci 2017 年 12 月 26 日 2:18
【讨论】:
我卸载了 CMake,然后启动了问题中的命令。现在情况恶化了:$ cmake -version
bash: /usr/bin/cmake: is a directory
我丢失了我的 CMake。此外:[1]我应该同时需要新版本和旧版本,我应该如何找回旧版本? [2] 如何在包管理器中配置一个让我始终保持更新的存储库?
@Ernesto_Che 在 Linux 上,您不需要安装 cmake
版本来构建 cmake
(参见 here:If there is no existing CMake installation, a bootstrap script is provided
)。由于您现在已经卸载了 cmake
的“旧”版本,因此首先尝试再次对 CMake 源项目执行 sudo make install
。如果这不起作用,请再次删除/删除 cmake-3.10.2
文件夹,然后从头开始重新执行这些步骤。可能您还需要首先删除/usr/local/bin/cmake
下的“新”版本cmake
的半成品安装。
@Ernesto_Che 而且 - 如果您总是想拥有最新版本的 cmake
- 没有包管理器服务器会自动让您保持最新版本。 here 或 here 描述了更多可能性和替代服务器。【参考方案3】:
Opensuse has provided Tumbleweed and Leap for us. Tumbleweed always includes the newest packages.
Leap has the most stable version packages.
问候
【讨论】:
以上是关于无法更新 CMake的主要内容,如果未能解决你的问题,请参考以下文章