CentOS 6.3에 최신 ImageMagick 설치


13

CentOS 6.3 x86_64 서버에 최신 버전의 ImageMagick을 설치하려고하는데 끔찍한 시간이 있습니다. 먼저 ImageMagick 사이트에서 RPM을 다운로드 하여 설치하려고했습니다. 종속성이 없어서 실패했습니다.

error: Failed dependencies:
    libHalf.so.4()(64bit) is needed by ImageMagick-6.8.0-4.x86_64
    libIex.so.4()(64bit) is needed by ImageMagick-6.8.0-4.x86_64
    libIlmImf.so.4()(64bit) is needed by ImageMagick-6.8.0-4.x86_64
    libImath.so.4()(64bit) is needed by ImageMagick-6.8.0-4.x86_64
    libltdl.so.3()(64bit) is needed by ImageMagick-6.8.0-4.x86_64

나는 한 libtool-ltdl설치,하지만 그건 포함 libltdl.so.7하지 libltdl.so.4. 내가 가진 유사한 문제가 libHalf, libIex, libIlmImflibImath. 일반적으로 OpenEXR을 설치하여 이러한 종속성을 얻을 수 있습니다. 불행하게도 CentOS 6.3에는 ilmbase-devel 1.0.1이 포함 된 OpenEXR 1.6.1이 포함되어 있습니다. 그리고 ilmbase-devel 릴리스에는 최신 버전의 해당 종속성이 포함되어 있습니다.

  • libHalf.so.6
  • libIex.so.6
  • libIlmImf.so.6
  • libImath.so.6

다음 으로 소스에서 ImageMagick을 설치 하기 위한 지침따르 려고 시도했습니다 . 행운도 없습니다. 빌드 오류가 발생합니다.

RPM build errors:
  File not found by glob: /home/sean/rpmbuild/BUILDROOT/ImageMagick-6.8.0-4.x86_64/usr/lib64/ImageMagick-6.8.0/modules-Q16/coders/djvu.*

configuredjvu를 명시 적으로 제외하기 위해 다시 실행해도 여전히 동일한 오류가 발생합니다. 이 시점에서 나는 머리를 뽑고있다.

CentOS 6.3에 비교적 최신 버전의 ImageMagick (> 6.7)을 설치하는 가장 쉬운 방법은 무엇입니까? 누군가 어딘가에 의존성을 가진 RPM 제공합니까 ?


내가 작업에있어하지만 당신이 시도 할 수 있다면 나도 확실하지이에 문제가 있었다 '냠 libtool이-ltdl-(STABLE)을 설치'
user16081-JoeT

CentOS 6.3 에서는를 libtool-ltdl-devel포함 libltdl.so.7하지만 ImageMagick에는이 필요합니다 libltdl.so.3. :(
organicveggie

.3에서 .7까지 심볼릭 링크를 만들고 ImageMagick을 가짜로 설치하여 설치할 수있을 정도로 비슷한 지 궁금합니다. 총 해킹 움직임이지만 작동 할 수도 있습니다 : \
user16081-JoeT

답변:


12

이 문제가 발생해서는 안됩니다 ... 현재 버전의 ImageMagick 의 통조림으로 된 바이너리를 검색하려고했습니다 . 이상한 전제 조건이없는 것을 찾을 수 없었습니다 ...

따라서 CentOS 6.3 가상 머신을 분리하고 최신 ImageMagick SRPM 파일을 빌드했습니다 . RepoForge 리포지토리 (이전의 RPMForge) 도 활성화 할 수 있습니다 . 빌드는 문제없이 진행되었습니다!

시스템 정보:

[root@MDMarra ~]# uname -a
Linux MDMarra.localdomain 2.6.32-279.11.1.el6.x86_64 #1 SMP Tue Oct 16 15:57:10 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

[root@MDMarra ~]# cat /etc/issue
CentOS release 6.3 (Final)
Kernel \r on an \m

[root@MDMarra ~]# yum repolist
repo id                                       repo name                                                     status
base                                          CentOS-6 - Base                                                 6346
extras                                        CentOS-6 - Extras                                                  6
rpmforge                                      Red Hat Enterprise 6 - RPMforge.net - dag                       4453
update                                        CentOS-6 - Updates                                               820

설치를 시작하십시오.

[root@MDMarra ~]# wget http://imagemagick.mirrorcatalogs.com/linux/SRPMS/ImageMagick-6.8.0-4.src.rpm
[root@MDMarra ~]# yum install bzip2-devel freetype-devel libjpeg-devel libpng-devel libtiff-devel giflib-devel zlib-devel ghostscript-devel djvulibre-devel libwmf-devel jasper-devel libtool-ltdl-devel libX11-devel libXext-devel libXt-devel lcms-devel libxml2-devel librsvg2-devel OpenEXR-devel
[root@MDMarra ~]# rpmbuild --rebuild ImageMagick-6.8.0-4.src.rpm

이 파일들은 생성되었습니다 :

Processing files: ImageMagick-debuginfo-6.8.0-4.x86_64
Checking for unpackaged file(s): /usr/lib/rpm/check-files /root/rpmbuild/BUILDROOT/ImageMagick-6.8.0-4.x86_64
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-6.8.0-4.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-devel-6.8.0-4.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-djvu-6.8.0-4.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-doc-6.8.0-4.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-perl-6.8.0-4.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-c++-6.8.0-4.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-c++-devel-6.8.0-4.x86_64.rpm
Wrote: /root/rpmbuild/RPMS/x86_64/ImageMagick-debuginfo-6.8.0-4.x86_64.rpm

패키지를 설치하십시오 :

rpm -ivh /root/rpmbuild/RPMS/x86_64/ImageMagick-6.8.0-4.x86_64.rpm 

설치된 바이너리를 확인하십시오.

[root@MDMarra ~]# rpm -qlp /root/rpmbuild/RPMS/x86_64/ImageMagick-6.8.0-4.x86_64.rpm| grep bin
/usr/bin/animate
/usr/bin/compare
/usr/bin/composite
/usr/bin/conjure
/usr/bin/convert
/usr/bin/display
/usr/bin/identify
/usr/bin/import
/usr/bin/mogrify
/usr/bin/montage
/usr/bin/stream

새로 설치된 패키지 버전 번호를 확인하십시오.

[root@MDMarra ~]# /usr/bin/convert -version
Version: ImageMagick 6.8.0-4 2012-11-07 Q16 http://www.imagemagick.org
Copyright: Copyright (C) 1999-2012 ImageMagick Studio LLC
Features: OpenMP    

즐겨!!


흠. 흥미 롭군 RPM을 다시 작성하려고 할 때 djvulibre-devel, libwmf-devel, jasper-devel 또는 giflib-devel을 설치하지 않았습니다. 렘은 그에게 총을 줘.
organicveggie

RPM을 빌드하는 데 필요한 * -devel 패키지 목록은 처음 rpmbuildSRPM에 대해 실행할 때받은 오류에 나열되었습니다 . 결과 파일 만 업로드 할 수도 있지만 ... 수행 한 단계를 간략하게 설명하고 싶었습니다.
ewwhite

SRPM을 먼저 재 구축하라는 지시를 따르지 않았습니다. 어떻게 든 그 단계를 실행하면 누락 된 RPM에 대한 검사를 건너 뛸 수 rpmbuild있습니다. 기묘한. 누락 된 RPM을 설치하면 문제가 해결되었습니다! 최종 RPM을 빌드하고 장애없이 설치할 수있었습니다. 테스트 결과 바이너리가 완벽하게 작동했습니다. 감사!
organicveggie

10
왜 나에게 속박되어 있습니까? 정말 어색합니다.
MDMarra

4
@MDMarra : 결혼하려고합니다. 어떤 행동에 대해서도 감사하십시오.
Scott Pack

5

아무도 "번거롭지 않은"대안을 언급하지 않았으므로 새로운 답변을 추가 할 것입니다.

비공식 저장소를 사용하지 않아도되는 경우 http://blog.famillecollet.com/pages/Config-en에 설명 된대로 Remi 저장소를 활성화 할 수 있습니다 . 그 후, 그냥 입력

yum install ImageMagick-last.x86_64 ImageMagick-last-devel.x86_64

그리고 이미 패키지되어 있으며 모든 의존성이 yum에 의해 올바르게 해결되고 처리되는 최신 버전 중 하나를 얻을 수 있습니다. 다시 컴파일 할 필요가 없습니다.

참고 : 공식 웹 사이트에서 찾을 수있는 버전으로 정확하게 최신 버전은 아니지만 1-2 개월이 지나지 않는 것 같습니다. 예를 들어, 최신 공식 버전을 작성할 당시 레미 레포에서 찾은 버전은 6.8.7 (2013 년 12 월 15 일) 인 6.8.8 (2014 년 1 월 12 일)입니다.


또는 다음과 같이 일회성으로 remi repo에서 다운로드 할 수 있습니다sudo yum --enablerepo=remi install ImageMagick-last.x86_64 ImageMagick-last-devel.x86_64
user56reinstatemonica8

1

CentOS 7.2 및 ImageMagick 6.9.3-9에서이 문제가 발생했습니다. 많은 시행 착오 후에 나는 그 6.9.3- 발견 8 6.9.3-하면서, 작품을 9가 해결되지 의존성을 가지고있다. 다행히도 http://rpm.pbone.net/ 은 이전 버전의 저장소를 찾았습니다.

IMAGEMAGICK_VERSION=6.9.3-8
# Be warned, 6.9.3-9 does not work; dependencies fail to resolve
IMAGEMAGICK_LIBS_SHA1=c0919e4ef4b7edc1052ef40eef4cc34f7a86341c
IMAGEMAGICK_SHA1=f99eda483850dd116b08e5527d603be2a47db8c4

curl -O ftp://ftp.icm.edu.pl/vol/rzm4/ImageMagick/linux/CentOS/x86_64/ImageMagick-libs-$IMAGEMAGICK_VERSION.x86_64.rpm \
    && sha1sum ImageMagick-libs-$IMAGEMAGICK_VERSION.x86_64.rpm | grep $IMAGEMAGICK_LIBS_SHA1 \
    && yum install -y ImageMagick-libs-$IMAGEMAGICK_VERSION.x86_64.rpm \
    && rm ImageMagick-libs-$IMAGEMAGICK_VERSION.x86_64.rpm \
    && curl -O ftp://ftp.icm.edu.pl/vol/rzm4/ImageMagick/linux/CentOS/x86_64/ImageMagick-$IMAGEMAGICK_VERSION.x86_64.rpm \
    && sha1sum ImageMagick-$IMAGEMAGICK_VERSION.x86_64.rpm | grep $IMAGEMAGICK_SHA1 \
    && yum install -y ImageMagick-$IMAGEMAGICK_VERSION.x86_64.rpm \
    && rm ImageMagick-$IMAGEMAGICK_VERSION.x86_64.rpm

0

다음 또는 최소한 다음 중 일부가 필요한 것 같습니다.

OpenEXR-devel.i686
OpenEXR-devel.x86_64
OpenEXR-libs.i686
OpenEXR-libs.x86_64

yum install OpenEXR-devel.i686 OpenEXR-libs.i686 OpenEXR-devel.x86_64 OpenEXR-libs.x86_64

4를 모두 설치한다고해서 디스크 공간 사용량이 많이 발생하거나 증가하지는 않지만 http://rpm.pbone.net/ 에서 'libHalf.so.4'또는 '를 검색했을 때 반환되는 패키지입니다. 예를 들어 libIlmImf.so.4 '입니다.


명확히하기 위해 게시물을 업데이트하지만 이미 그 길을갔습니다. CentOS 6.3에는 OpenEXR 1.6.1이 있으며 여기에는 ( 예를 들어) 와 같은 최신 버전 이 포함됩니다 . libHalflibHalf.so.6
organicveggie

0

ImageMagicK의 개발 버전도 설치해야하는 경우 다음을 실행할 수 있습니다.

rpm -ivh /root/rpmbuild/RPMS/x86_64/ImageMagick-devel-6.8.0-4.x86_64.rpm

ImagicK (PHP) 바인딩을 실행하려는 경우이 단계가 필요합니다. iMagicK 유형을 설치하려면

pecl 설치 imagick

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.