Linux ubuntu:升级软件(cmake)-版本消除歧义(本地编译)

Linux ubuntu:升级软件(cmake)-版本消除歧义(本地编译),linux,cmake,version,upgrade,Linux,Cmake,Version,Upgrade,我在我的机器上安装了CMAKE2.8.0(来自ubuntu软件包),二进制文件放在/usr/bin/cmake中。我需要将cmake版本升级到至少2.8.2。ubuntu版本很旧,但我现在无法升级,因此我必须从源代码处安装它。我已经下载了cmake 2.8.2,然后使用root权限进行了makeinstall。现在我的机器上安装了两个并行的cmakes: /usr/bin/cmake-2.8.0 /usr/local/bin/cmake-2.8.2 任何_user@machine$cmake

我在我的机器上安装了CMAKE2.8.0(来自ubuntu软件包),二进制文件放在/usr/bin/cmake中。我需要将cmake版本升级到至少2.8.2。ubuntu版本很旧,但我现在无法升级,因此我必须从源代码处安装它。我已经下载了cmake 2.8.2,然后使用root权限进行了
makeinstall
。现在我的机器上安装了两个并行的cmakes:

  • /usr/bin/cmake-2.8.0
  • /usr/local/bin/cmake-2.8.2
任何_user@machine$cmake--版本 2.8.0 root@machine$cmake--版本 2.8.2
我应该怎么做才能摆脱2.8.0(现在对我来说已经过时了),还是用2.8.2来取代2.8.0?我希望任何非用户键入
cmake
(不指定路径)以获取更新版本。提前感谢。

通常使用以下步骤(基本上适用于任何自定义构建应用程序):

首先,从构建位置使用新构建的cmake,检查它是否正常工作

当您确认它正常工作时,您可以使用以下方法正确删除Ubuntu版本:

apt-get remove cmake
最后,使用
makeinstall
命令安装较新的cmake

在我们的例子中,由于您已经安装了自定义版本,您可能希望在删除Ubuntu软件包后重新安装cmake,以防止cmake因删除过程而损坏。

您应该使用来安装软件包。它创建了一个可以安装在系统上的软件包。这样,您安装的文件将由软件包管理器处理,并且可以轻松删除。

我认为旧的软件包会被自动删除,当你给这个软件包时,你会创建一个新的版本(我这里不确定)

cmake版本是2.8.9,甚至比你定制的版本还要新……是的,但是——正如我所写的——我有旧的ubuntu(lucid lynx),现在无法升级。Ubuntu 10.04(LL)附带了2.8.0My bad,我错过了那部分(虽然它有点“隐藏”),谢谢你的回答。我遵循了它,现在在/usr/local/bin中有了cmake版本2.8.10.2(最新版本),而在/usr/bin中没有任何内容(在apt获得删除后)。Root用户找到/usr/local/bin,但是普通用户在从命令行“bash:/usr/bin/cmake:没有这样的文件或目录”运行
$cmake
时返回以下错误。我是否应该使用另一个选项运行
makeinstall
。在正确的设置中,正在搜索的位置(存储在
路径
变量中)包括
/usr/local/bin
,因此它应该可以工作。是否修改了此环境变量?路径正常。注销和登录,一切正常。谢谢!
apt-get remove cmake