yum은 cmake의 이전 버전을 설치합니다 설치를 사용하는 CentOS 6을 사용하고 있습니다. 누구든지

어떤 이유로 yumcmake를 실행 하면 이전 버전이 설치됩니다. 내 리포지토리 목록이 완전하지 않기 때문일 수 있습니까? 인터넷이 아닌 설치 CD에서 최소 데스크탑 설치를 사용하는 CentOS 6을 사용하고 있습니다. 누구든지 repo 링크 또는 무언가를 줄 수 있습니까?

Scientific Linux에서도 마찬가지입니다.

yum install cmakebash 스크립트에서 작업 하려고하기 때문에 마지막 수단으로 직접 컴파일해야합니다 .



답변

당신은 말하지 않지만 어떤 버전을 받고 있으며 어떤 버전을 기대하십니까?

어떤 리포지토리가 있습니까?

이 명령을 사용하여 시스템이 쿼리하도록 구성된 리포지토리를 찾을 수 있습니다.

$ 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

패키지 정보

패키지의 설치 여부를 사용하여 쿼리 할 수 ​​있습니다 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

repoquery명령 을 사용하여 RPM을 다운로드 할 위치를 찾을 수 있습니다 .

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

이 저장소의 일부는 다음과 같습니다.

$ repoquery -i cmake | grep Repos
Repository  : base

이 패키지를 제공하는 CentOS 배포판의 기본 저장소입니다.

다른 리포지토리에는 무엇이 있습니까?

pkgs.org를 사용하여 특정 패키지 (적어도 대부분의 주요 저장소)를 포함하는 저장소를 쿼리 할 수 ​​있습니다 .

이 목록에 따르면 EPEL 저장소 에는 최신 버전이 사전 빌드되어 있습니다. 이 패키지의 버전은 다음과 같습니다. cmake 28-2.8.11.2-1.


답변

CentOS 6.5에서 cmake 2.8이 필요했지만 yum을 사용하려는 시도는 올바른 버전이 포함 된 repos를 추가하려고해도 cmake를 항상 2.6으로 유지합니다. 해키이지만 일종의 루트로 다음 명령을 실행하여 필요한 것을 얻을 수있었습니다.

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


답변