Как установить cmake 3.2 на Ubuntu


119

Версия cmake по умолчанию от 14.04 - 2.8. Как я могу установить cmake 3.2 и заменить его по умолчанию? Или как я могу обновить 2.8 до 3.2?


2
Имейте в виду, что некоторые установленные системой пакеты не будут корректно работать с cmake 3.2 14.04. Например, Eigen устанавливает свои модули CMake в /usr/share/cmake-2.8, где они явно не могут быть найдены CMake 3.2.
Мартин Пека

Ответы:


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

15
Да, первый метод тоже не работает для меня.
weberc2

Метод 1 не работает, и мне пришлось очистить пакет cmake, чтобы вернуться к работающему cmake (2.8) путем переустановки. Способ 2 работает отлично.
user2746401

3
Метод 1 изначально не работал для меня (он установлен, но cmake не работал должным образом из-за того, что CMAKE_ROOT не был найден), но после очистки пакета cmake (а также cmake-data на всякий случай) и последующей переустановки 3.2 через Удачно, все работало нормально.
JAB

Да, и если у вас его нет add-apt-repository(я не сделал, предположительно, потому что я устанавливал на уменьшенную виртуальную машину), вам нужно установить software-properties-commonпакет.
JAB

31

Есть три варианта:

  • установить из PPA
  • установить готовый бинарный дистрибутив с cmake.org
  • скомпилируйте это сами

Установка из ППА

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». Также улучшает форматирование и увеличивает URL загрузки cmake до последней версии. Я пытался просто отредактировать принятый ответ, но мои правки были отклонены автором.
nocnokneo

13

Я не уверен, что опаздываю на вечеринку, но недавно на Ubuntu 14.04 я столкнулся с такими же проблемами, и именно так я решил это. Во-первых, вам нужно удалить существующее cmake, выполнив команду:

sudo apt-get remove cmake

Хит returnили enter. Далее необходимо установить 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работает хорошо.
Эрик Ван

@EricWang Да, Эрик, теперь с Ubuntu 16.04 и выше он работает нормально.
Фенек

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
URL не работает.
АВ

3
Работающий URL не будет указывать на более новые версии в будущем, пожалуйста, проверьте веб-сайт cmake на наличие последней версии.
Оливер Р.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.