Cách cài đặt cmake 3.2 trên Ubuntu


119

Phiên bản cmake mặc định của 14.04 là 2.8. Làm cách nào để cài đặt cmake 3.2 và thay thế mặc định? Hoặc làm thế nào tôi có thể nâng cấp 2.8 lên 3.2?


2
Xin lưu ý rằng một số gói được cài đặt hệ thống sẽ không hoạt động chính xác với cmake 3.2 vào ngày 14.04. Ví dụ, Eigen cài đặt các mô-đun CMake của nó trong /usr/share/cmake-2.8, nơi CMake 3.2 rõ ràng không thể tìm thấy chúng.
Martin Pecka

Câu trả lời:


185

Sử dụng PPA hoặc tự biên dịch nó:

  1. Cài đặt bằng PPA (Nâng cấp lên 3.2)

    sudo apt-get install software-properties-common
    sudo add-apt-repository ppa:george-edison55/cmake-3.x
    sudo apt-get update
    
    • Khi cmake chưa được cài đặt:

      sudo apt-get install cmake
      
    • Khi cmake đã được cài đặt:

      sudo apt-get upgrade
      
  2. Tự biên dịch nó

    Hiện tại, phiên bản mới nhất là 3.2.2, hướng dẫn sau dựa trên phiên bản này. Do đó, bạn nên kiểm tra URL này và điều chỉnh tên tệp cho phù hợp.

    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
    

    Bây giờ bạn có thể phải chọn loại cài đặt để quyết định, tôi khuyên bạn nên cài đặt checkinstall, vì điều này tạo ra gói DEB.

    • Với checkinstall

      sudo apt-get install checkinstall
      sudo checkinstall
      
    • Với make install

      sudo make install
      

9
Phương pháp đầu tiên không hiệu quả với tôi. Tôi chạy cả cài đặt hoặc nâng cấp và cả hai đều không hoạt động. Cài đặt từ nguồn hoạt động và tôi thích cách tiếp cận để cài đặt dưới dạng gói .deb.
ycshao

15
Vâng, phương pháp đầu tiên cũng không hiệu quả với tôi.
weberc2

Phương pháp 1 không hoạt động và tôi đã phải lọc gói cmake để quay lại cmake đang hoạt động (2.8) bằng cách cài đặt lại. Phương pháp 2 hoạt động tốt.
dùng2746401

3
Phương pháp 1 ban đầu không hoạt động với tôi (nó đã được cài đặt, nhưng cmake không hoạt động chính xác do những thứ như CMAKE_ROOT không được tìm thấy), nhưng sau khi xóa gói cmake (cũng như dữ liệu cmake chỉ trong trường hợp) và sau đó cài đặt lại 3.2 thông qua apt-get nó hoạt động tốt.
JAB

Ồ, và nếu bạn không có add-apt-repository(tôi đã không, giả sử vì tôi đang cài đặt trên một máy ảo được làm mỏng), bạn cần phải cài đặt software-properties-commongói.
JAB

31

Có ba lựa chọn:

  • cài đặt từ PPA
  • cài đặt phân phối nhị phân dựng sẵn từ cmake.org
  • tự biên dịch nó

Cài đặt từ PPA

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

Khi cmake chưa được cài đặt:

sudo apt-get install cmake

Khi cmake đã được cài đặt:

sudo apt-get upgrade

Cài đặt từ phân phối nhị phân cmake.org

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

CMake thực thi sẽ được trong /opt/cmake-3.5.2-Linux-x86_64/bin/.

Tự biên dịch nó

Hiện tại, phiên bản mới nhất là 3.5.2, hướng dẫn sau dựa trên phiên bản này. Do đó, bạn nên kiểm tra trang tải xuống và điều chỉnh tên tệp cho phù hợp.

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

Bây giờ bạn có thể phải chọn loại cài đặt để quyết định, tôi khuyên bạn nên cài đặt checkinstall, vì điều này tạo ra gói DEB.

  • với checkinstall

    sudo apt-get install checkinstall
    sudo checkinstall
    
  • với make install

    sudo make install
    

2
Nó thêm tùy chọn "Cài đặt từ phân phối nhị phân cmake.org". Cũng cải thiện định dạng và đưa URL tải xuống cmake lên bản phát hành mới nhất. Tôi đã cố gắng chỉ chỉnh sửa câu trả lời được chấp nhận nhưng các chỉnh sửa của tôi không được tác giả chấp nhận.
nocnokneo

13

Tôi không chắc là mình có trễ bữa tiệc không, nhưng gần đây trên Ubuntu 14.04 tôi đã gặp phải vấn đề tương tự và đây là cách tôi giải quyết nó. Trước tiên, bạn cần loại bỏ hiện có cmakebằng cách thực hiện lệnh:

sudo apt-get remove cmake

Trúng returnhay enter. Tiếp theo, bạn cần cài đặt cmake3bằng cách sử dụng các lệnh sau:

sudo apt-get update 

sudo apt-get upgrade 

sudo apt-get install cmake3

Giả sử, câu trả lời của tôi sẽ cũ đi sau vài năm, hãy xem xét tìm kiếm gói cmake có số liên quan đến nó. Ví dụ, tại thời điểm này, cmake3 hoạt động với tôi.

Để làm như vậy, tất cả những gì bạn phải thực hiện là

apt-cache search cmake

Một khi bạn tìm thấy gói, chỉ cần cài đặt theo đề nghị.

Cảm ơn bạn đã
mã hóa hạnh phúc!


Vâng, đơn giản là sudo apt-get install cmakehoạt động tốt.
Eric Wang

@EricWang Yea Eric, bây giờ với Ubuntu 16.04 trở lên, nó hoạt động tốt.
Fennec

1
Đây phải là một câu trả lời được chấp nhận
Tessaracter

8

Cố gắng xây dựng nó từ nguồn, cài đặt nó và điều chỉnh các biến $ PATH của bạn để làm cho nó có sẵn. Có lẽ bạn nên thêm các biến đã xuất vào bashrc của bạn. Về cơ bản, đó là cách tôi sẽ làm, vui lòng thay đổi tên tệp và thư mục theo nhu cầu của bạn:

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 không hoạt động.
AB

3
Một URL hoạt động sẽ không trỏ đến các phiên bản mới hơn trong tương lai, vui lòng kiểm tra trang web của cmake để biết phiên bản mới nhất.
Oliver R.

1

Chỉ cần cài đặt mới nhất từ ​​sh từ https://cmake.org/doad/

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
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.