yum instaluje starą wersję cmake

9

Z jakiegoś powodu, gdy uruchamiam się, yumaby uzyskać cmake, zainstaluje starszą wersję. Czy to możliwe, ponieważ moja lista repozytoriów nie jest kompletna? Korzystam z CentOS 6, używając minimalnej instalacji na pulpicie z instalacyjnej płyty CD innej niż net. Czy ktoś może mi dać link repo lub coś takiego?

To samo dzieje się w Scientific Linux.

Sam wziąłbym go za ostateczność, ponieważ staram się yum install cmakepracować w skrypcie bash.

Dominique
źródło
Sprawdź swoją yumkonfigurację w /etc/yum.repos.d/*; czy jest tam coś, co blokuje zainstalowaną wersję?
DopeGhoti
Nie sądzę, wszystko wygląda normalnie i jest domyślne, jest to czysta instalacja.
Dominique
Czy repozytoria, w których znajduje się pakiet, są rzeczywiście ustawione enabled=1?
DopeGhoti
1
Jak decydujesz, że paczka jest nieaktualna? Czy nie jest możliwe, że Twoja dystrybucja ma po prostu starszą wersję w swoich repozytoriach?
strugee
Niedawno musiałem wykonać kilka kompilacji OpenCV w zaktualizowanym systemie operacyjnym opartym na Debian GNU / Linux. Wstępnie skompilowana dostępna CMake była zbyt stara, aby zbudować OpenCV, ale pobieranie i budowanie CMake rozwiązało problem bardzo dobrze.
41754

Odpowiedzi:

7

Nie mówisz, ale jakie otrzymujesz wersje i jakich wersji oczekujesz?

Jakie mam repozytoria?

Możesz dowiedzieć się, jakie repozytoria są skonfigurowane do przeszukiwania systemu za pomocą tego polecenia:

$ 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

Informacje o pakiecie

Możesz wysłać zapytanie do dowolnego pakietu, niezależnie od tego, czy jest zainstalowany, czy nie 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 pakietu

Możesz dowiedzieć się, skąd RPM jest pobierany przy użyciu repoquerypolecenia.

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

Który jest częścią tego repozytorium:

$ repoquery -i cmake | grep Repos
Repository  : base

Jest to więc podstawowe repozytorium dystrybucji CentOS, która zapewnia ten pakiet.

Jakie inne repozytoria to mają?

Możesz zapytać, które repozytoria zawierają określony pakiet (przynajmniej większość głównych repozytoriów), używając pkgs.org .

Zgodnie z tą listą repozytorium EPEL ma najnowszą wersję. Wersja tego pakietu jest następująca: cmake 28-2.8.11.2-1.

slm
źródło
Odkryłem, że ATrpms Testing repositoryma potrzebną wersję. Zainstalowałem go i użyłem tego repozytorium, aby uzyskać najnowszą wersję, dzięki.
Dominique
@Dominique - świetnie, cieszę się, że rozwiązałeś problem!
slm
Dziękuję za tę rezolucję! I jeszcze raz dziękuję [za] dodatkowe informacje o poleceniach yum / repo mgmt.
jredd
@jRadd - nie ma za co!
slm
6

Potrzebowałem cmake 2.8 na CentOS 6.5, ale moje próby użycia yum zawsze utrzymywały cmake na 2.6, mimo że próbowałem dodawać repo, które pozornie zawierały poprawną wersję. To trochę hacky, ale udało mi się zdobyć to, czego potrzebowałem, wykonując następujące polecenia jako 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
heenenee
źródło