如何在Ubuntu上安装cmake 3.2


118

默认的cmake版本14.04是2.8。如何安装cmake 3.2并替换默认的cmake 3.2?或者如何将2.8升级到3.2?


2
请注意,某些系统安装的程序包无法与14.04上的cmake 3.2一起正常使用。例如,Eigen将其CMake模块安装在/usr/share/cmake-2.8中,而CMake 3.2显然找不到这些模块。
马丁·佩卡

Answers:


185

使用PPA或自己编译:

  1. 通过PPA安装(升级到3.2)

    sudo apt-get install software-properties-common
    sudo add-apt-repository ppa:george-edison55/cmake-3.x
    sudo apt-get update
    
    • 如果尚未安装cmake:

      sudo apt-get install cmake
      
    • 当已经安装了cmake时:

      sudo apt-get upgrade
      
  2. 自己编译

    当前,最新版本是3.2.2,以下说明基于此版本。因此,您应该检查该URL并相应地调整文件名。

    sudo apt-get install build-essential
    wget http://www.cmake.org/files/v3.2/cmake-3.2.2.tar.gz
    tar xf cmake-3.2.2.tar.gz
    cd cmake-3.2.2
    ./configure
    make
    

    现在,您必须选择一种安装类型来决定,我建议使用安装checkinstall,因为这将创建DEB软件包。

    • checkinstall

      sudo apt-get install checkinstall
      sudo checkinstall
      
    • make install

      sudo make install
      

9
第一种方法对我不起作用。我同时运行安装或升级,但对我来说都不是。从源代码安装,我喜欢以.deb软件包安装的方法。
ycshao 2015年

15
是的,第一种方法对我也不起作用。
weberc2

方法1不起作用,我必须清除cmake软件包才能通过重新安装恢复到正常的cmake(2.8)。方法2正常工作。
user2746401 2015年

3
方法1最初对我不起作用(已安装,但由于未找到CMAKE_ROOT之类的东西而使cmake不能正常工作),但是清除了cmake软件包(以及cmake-data以防万一),然后通过重新安装3.2 apt-get正常工作。
2015年

哦,如果您没有add-apt-repository(我没有,因为我是在精简版VM上安装的,所以没有),则需要安装该software-properties-common软件包。
2015年

31

共有三个选项:

  • 从PPA安装
  • 从cmake.org安装预构建的二进制发行版
  • 自己编译

从PPA安装

sudo add-apt-repository ppa:george-edison55/cmake-3.x
sudo apt-get update

如果尚未安装cmake:

sudo apt-get install cmake

当已经安装了cmake时:

sudo apt-get upgrade

从cmake.org二进制分发安装

curl -sSL https://cmake.org/files/v3.5/cmake-3.5.2-Linux-x86_64.tar.gz | sudo tar -xzC /opt

CMake可执行文件将位于中/opt/cmake-3.5.2-Linux-x86_64/bin/

自己编译

当前,最新版本为3.5.2,以下说明基于该版本。因此,您应该检查下载页面并相应地调整文件名。

sudo apt-get install build-essential
wget http://www.cmake.org/files/v3.5/cmake-3.5.2.tar.gz
tar xf cmake-3.5.2.tar.gz
cd cmake-3.5.2
./configure
make

现在,您必须选择一种安装类型来决定,我建议使用安装checkinstall,因为这将创建DEB软件包。

  • checkinstall

    sudo apt-get install checkinstall
    sudo checkinstall
    
  • make install

    sudo make install
    

2
它添加了“从cmake.org二进制分发安装”选项。还改善了格式设置,并将cmake下载URL更改为最新版本。我试图只编辑接受的答案,但作者未接受我的编辑。
nocnokneo

13

我不确定我是否参加晚会,但是最近在Ubuntu 14.04上我遇到了同样的问题,这就是我如何解决的。首先,您需要cmake通过执行以下命令删除现有的命令:

sudo apt-get remove cmake

按下returnenter。接下来,您需要cmake3使用以下命令进行安装:

sudo apt-get update 

sudo apt-get upgrade 

sudo apt-get install cmake3

假设我的答案将在几年后变老,请考虑搜索一个具有相关编号的cmake软件包。例如,此时,cmake3对我有用。

为此,您要做的就是

apt-cache search cmake

找到软件包后,按照建议进行安装。

谢谢您
快乐编码!


是的,sudo apt-get install cmake效果很好。
Eric Wang

@EricWang Yea Eric,现在使用Ubuntu 16.04及更高版本,可以正常工作。
Fennec

1
这必须是一个公认的答案
Tessaracter

8

尝试从源代码构建,安装并调整$ PATH变量以使其可用。也许您应该将导出的变量添加到您的bashrc中。基本上,这就是我的操作方式,请根据您的需要更改文件名和文件夹名:

sudo apt-get install build-essential
wget http://url.to/cmake-3.2-src.tar.gz
tar xzf cmake-3.2-src.tar.gz
cd cmake-3.2-src
./configure
make
# If make finishes without errors:
sudo make install
export PATH=/usr/local/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH
cmake --version # This should give v3.2

1
该网址无效。
AB

3
可用的网址将来不会指向较新的版本,请访问cmake网站获取最新版本。
奥利弗·R.

1

只需从https://cmake.org/download/从sh安装最新版本

cd /usr
sudo wget https://cmake.org/files/v3.8/cmake-3.8.2-Linux-x86_64.sh -P /usr/
sudo chmod 755 /usr/cmake-3.8.2-Linux-x86_64.sh
sudo ./cmake-3.8.2-Linux-x86_64.sh
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.