yum cài đặt một phiên bản cũ của cmake


9

Vì một số lý do khi tôi chạy yumđể lấy cmake, nó sẽ cài đặt một phiên bản cũ hơn. Có thể là do danh sách repo của tôi không đầy đủ? Tôi đang sử dụng CentOS 6 bằng cách sử dụng cài đặt máy tính để bàn tối thiểu từ CD cài đặt không phải mạng. Bất cứ ai có thể cho tôi một liên kết repo hoặc một cái gì đó?

Điều tương tự cũng xảy ra trên Linux Linux.

Tôi sẽ tự biên dịch nó như là phương sách cuối cùng bởi vì tôi đang cố gắng thực hiện yum install cmakecông việc theo kịch bản bash.


Nhìn vào yumcấu hình của bạn trong /etc/yum.repos.d/*; Có bất cứ điều gì trong đó đang khóa phiên bản cài đặt xuống.
DopeGhoti

Tôi không nghĩ vậy, mọi thứ trông bình thường và mặc định, đây là một bản cài đặt sạch.
Dominique

Các kho lưu trữ nơi gói nằm thực sự được đặt thành enabled=1?
DopeGhoti

1
Làm thế nào bạn quyết định rằng gói đã hết hạn? Không phải là bản phân phối của bạn chỉ đơn giản là có một phiên bản cũ hơn trong kho của nó sao?
strugee

Gần đây tôi đã phải thực hiện một số bản dựng OpenCV trong một hệ điều hành dựa trên Debian GNU / Linux được cập nhật. CMake được biên dịch sẵn đã quá cũ để xây dựng OpenCV, nhưng tải xuống và xây dựng CMake đã giải quyết vấn đề rất tốt.
41754

Câu trả lời:


7

Bạn không nói nhưng bạn đang nhận được phiên bản nào và phiên bản nào bạn mong đợi?

Tôi có những kho lưu trữ nào?

Bạn có thể tìm hiểu những kho lưu trữ mà hệ thống của bạn được cấu hình để truy vấn bằng lệnh này:

$ yum repolist | expand
Loaded plugins: fastestmirror, priorities, refresh-packagekit
Loading mirror speeds from cached hostfile
 * base: centos.mirror.constant.com
 * epel: mirror.steadfast.net
 * extras: mirror.symnds.com
 * updates: bay.uchicago.edu
77 packages excluded due to repository priority protections
repo id         repo name                                               status
base            CentOS-6 - Base                                         6,297+70
epel            Extra Packages for Enterprise Linux 6 - x86_64            10,246
extras          CentOS-6 - Extras                                            7+7
updates         CentOS-6 - Updates                                           314
repolist: 16,864

Thông tin gói

Bạn có thể truy vấn bất kỳ gói nào cho dù nó được cài đặt hay không sử dụng yum info <pkg>.

$ yum info cmake
Loaded plugins: fastestmirror, priorities, refresh-packagekit
Loading mirror speeds from cached hostfile
 * base: centos.mirror.constant.com
 * epel: mirror.steadfast.net
 * extras: mirror.symnds.com
 * updates: bay.uchicago.edu
77 packages excluded due to repository priority protections
Installed Packages
Name        : cmake
Arch        : x86_64
Version     : 2.6.4
Release     : 5.el6
Size        : 18 M
Repo        : installed
From repo   : base
Summary     : Cross-platform make system
URL         : http://www.cmake.org
License     : BSD
Description : CMake is used to control the software compilation process using simple
            : platform and compiler independent configuration files. CMake generates
            : native makefiles and workspaces that can be used in the compiler
            : environment of your choice. CMake is quite sophisticated: it is possible
            : to support complex environments requiring system configuration, pre-processor
            : generation, code generation, and template instantiation.

URL của gói

Bạn có thể tìm ra nơi RPM đang được tải xuống bằng cách sử dụng repoquerylệnh.

$ repoquery --location cmake
http://centos.mirrors.hoobly.com/6.5/os/x86_64/Packages/cmake-2.6.4-5.el6.x86_64.rpm

Đó là một phần của kho lưu trữ này:

$ repoquery -i cmake | grep Repos
Repository  : base

Vì vậy, đây là kho lưu trữ cơ sở cho bản phân phối CentOS cung cấp gói này.

Những kho lưu trữ khác có nó?

Bạn có thể truy vấn kho lưu trữ nào chứa một gói cụ thể (ít nhất là hầu hết các kho chính) bằng pkgs.org .

Theo danh sách này, repo EPEL có phiên bản mới nhất được xây dựng trước. Phiên bản của gói này như sau: cmake 28-2.8.11.2-1.


Tôi thấy rằng ATrpms Testing repositorycó phiên bản tôi cần. Tôi đã cài đặt nó và sử dụng repo đó để có phiên bản mới nhất, cảm ơn.
Dominique

@Dominique - tuyệt vời, rất vui vì bạn đã giải quyết vấn đề của mình!
slm

Cảm ơn bạn đã giải quyết! Và cảm ơn bạn [một lần nữa] về thông tin bổ sung được cung cấp về các lệnh ym / repo mgmt.
Jredd

@jRadd - Bạn khá hoan nghênh!
slm

6

Tôi cần cmake 2.8 trên CentOS 6.5, nhưng những nỗ lực sử dụng yum của tôi cũng sẽ luôn giữ cmake ở mức 2.6 mặc dù tôi đã thử thêm các repos có vẻ như chứa phiên bản chính xác. Đó là một loại hacky, nhưng tôi đã có thể nhận được những gì tôi cần bằng cách thực hiện các lệnh sau dưới dạng root:

wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
rpm -ivh epel-release-6.8.noarch.rpm
yum install cmake28
cd /usr/bin
mv cmake cmake26
mv ccmake ccmake26
mv cpack cpack26
mv ctest ctest26
ln -s cmake28 cmake
ln -s ccmake28 ccmake
ln -s cpack28 cpack
ln -s ctest28 ctest
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.