O yum instala uma versão antiga do cmake

9

Por alguma razão, quando eu corro yumpara obter o cmake, ele instala uma versão mais antiga. Poderia ser porque minha lista de recompra não está completa? Estou no CentOS 6 usando uma instalação mínima da área de trabalho a partir do CD de instalação não líquida. Alguém poderia me dar um link de repo ou algo assim?

O mesmo acontece no Scientific Linux.

Eu gostaria de compilá-lo como último recurso, porque estou tentando fazer o yum install cmaketrabalho em um script bash.

Dominique
fonte
Veja sua yumconfiguração em /etc/yum.repos.d/*; existe alguma coisa que esteja bloqueando a versão instalada.
DopeGhoti
Eu acho que não, tudo parece normal e é o padrão, esta é uma instalação limpa.
Dominique
Os repositórios onde o pacote reside realmente estão definidos enabled=1?
DopeGhoti
1
Como você está decidindo que o pacote está desatualizado? Não é possível que sua distribuição simplesmente tenha uma versão mais antiga em seus repositórios?
strugee
Recentemente, tive que fazer algumas compilações do OpenCV em um sistema operacional Debian GNU / Linux atualizado. O CMake disponível pré-compilado era muito antigo para compilar o OpenCV, mas o download e a criação do CMake resolveram o problema muito bem.
41754

Respostas:

7

Você não diz, mas que versões você está adquirindo e quais versões você espera?

Quais repositórios eu tenho?

Você pode descobrir quais repositórios seu sistema está configurado para consultar usando este comando:

$ 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

Informações do pacote

Você pode consultar qualquer pacote, instalado ou não 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 do pacote

Você pode descobrir onde o RPM está sendo baixado usando o repoquerycomando

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

Que faz parte deste repositório:

$ repoquery -i cmake | grep Repos
Repository  : base

Portanto, este é um repositório básico da distribuição do CentOS que fornece este pacote.

Que outros repositórios possuem?

Você pode consultar quais repositórios contêm um pacote específico (pelo menos a maioria dos principais repositórios ) usando o pkgs.org .

De acordo com esta lista, o repo EPEL tem a versão mais recente pré-construída. A versão deste pacote é a seguinte: cmake 28-2.8.11.2-1.

slm
fonte
Eu achei que ATrpms Testing repositorytem a versão que eu preciso. Eu instalei e usei esse repositório para obter a versão mais recente, obrigado.
Dominique
@ Dominique - ótimo, feliz que você resolveu o seu problema!
slm
Obrigado por esta resolução! E obrigado [novamente] pelas informações extras fornecidas sobre os comandos yum / repo mgmt.
jredd
@jRadd - de nada!
slm
6

Eu precisava do cmake 2.8 no CentOS 6.5, mas minhas tentativas de usar o yum também sempre manteriam o cmake em 2.6, mesmo que eu tentasse adicionar repositórios que aparentemente continham a versão correta. É meio hacky, mas consegui o que precisava executando os seguintes comandos como 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
fonte