Ubuntuにcmake 3.2をインストールする方法


119

14.04のデフォルトのcmakeバージョンは2.8です。cmake 3.2をインストールしてデフォルトのものを置き換えるにはどうすればよいですか?または、2.8を3.2にアップグレードするにはどうすればよいですか?


2
システムにインストールされた一部のパッケージは、14.04のcmake 3.2では正常に動作しないことに注意してください。たとえば、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_ROOTが見つからないなどの理由でcmakeが正常に動作しませんでした) apt-getがうまくいきました。
JAB

ああ、もしあなたが持っていないならadd-apt-repository(私は、おそらくスリム化されたVMにインストールしていたので、そうしなかった)、あなたはsoftware-properties-commonパッケージをインストールする必要がある。
JAB

31

次の3つのオプションがあります。

  • 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

ヒット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 Yea Eric、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は機能しません。
AB

3
動作中のURLは将来的に新しいバージョンを指すことはありません。最新バージョンについてはcmakeのWebサイトを確認してください。
オリバーR.

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.