Mam straszny czas, próbując zainstalować najnowszą wersję ImageMagick na serwerze CentOS 6.3 x86_64. Po pierwsze, ja pobrać RPM ze strony ImageMagick i starał się go zainstalować. Nie udało się to z powodu brakujących zależności:
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
Mam libtool-ltdl
zainstalowany, ale zawiera libltdl.so.7
, nie libltdl.so.4
. Mam podobny problem z libHalf
, libIex
, libIlmImf
i libImath
. Zazwyczaj można zainstalować OpenEXR, aby uzyskać te zależności. Niestety, CentOS 6.3 zawiera OpenEXR 1.6.1, który obejmuje ilmbase-devel 1.0.1. I ta wersja ilmbase-devel zawiera nowsze wersje tych zależności:
libHalf.so.6
libIex.so.6
libIlmImf.so.6
libImath.so.6
Następnie spróbowałem wykonać instrukcje instalacji ImageMagick ze źródła. Tam też nie ma szczęścia. Pojawia się błąd kompilacji:
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.*
Uruchomiłem nawet ponownie, configure
aby jawnie wykluczyć djvu i nadal otrzymuję ten sam błąd. W tym momencie wyciągam włosy.
Jaki jest najłatwiejszy sposób na zainstalowanie stosunkowo nowej wersji ImageMagick (> 6.7) na CentOS 6.3? Czy ktoś oferuje gdzieś RPM z zależnościami ?
źródło
libtool-ltdl-devel
Zawiera CentOS 6.3libltdl.so.7
, ale wymaga ImageMagicklibltdl.so.3
. :(Odpowiedzi:
Nie powinieneś mieć tych problemów ... Próbowałem poszukać ładnych, gotowych plików binarnych aktualnej wersji ImageMagick . Nie mogłem znaleźć żadnego, który nie miałby dziwnych wymagań ...
Więc obróciłem maszynę wirtualną CentOS 6.3 i zbudowałem najnowszy plik ImageMagick SRPM . Możesz także włączyć repozytorium RepoForge (wcześniej RPMForge) . Kompilacja przebiegła bez żadnych problemów!
Informacje o systemie:
Rozpocznij instalację:
Te pliki zostały wygenerowane:
Zainstaluj pakiet:
Sprawdź zainstalowane pliki binarne:
Sprawdź numer nowej wersji pakietu:
Cieszyć się!!
źródło
rpmbuild
działałem przeciwko SRPM. Mógłbym również przesłać wynikowy plik ... Ale chciałem nakreślić kroki, które podjąłem.rpmbuild
. Dziwne. Zainstalowanie brakujących RPM załatwiło sprawę! Byłem w stanie zbudować końcowe RPM i zainstalować je bez żadnych problemów. Testy wykazały, że pliki binarne działają idealnie. Dzięki!Ponieważ nikt nie wspomniał o „bezproblemowej” alternatywie, dodam nową odpowiedź.
Jeśli nie masz nic przeciwko korzystaniu z nieoficjalnych repozytoriów, możesz włączyć repozytorium Remi zgodnie z opisem tutaj http://blog.famillecollet.com/pages/Config-en . Następnie po prostu wpisz
yum install ImageMagick-last.x86_64 ImageMagick-last-devel.x86_64
Otrzymasz jedną z najnowszych dostępnych wersji, już spakowanych i przy każdej zależności poprawnie rozwiązanej i obsługiwanej przez yum. Nie trzeba niczego kompilować.
Uwaga: nie jest dokładnie aktualna w wersji, którą można znaleźć na oficjalnej stronie internetowej, ale wydaje się, że ma nie więcej niż 1-2 miesiące w tyle. Na przykład w momencie pisania najnowszej oficjalnej wersji jest 6.8.8 (12 stycznia 2014 r.), Podczas gdy ta, którą znalazłem na remo, to 6.8.7 (15 grudnia 2013 r.).
źródło
sudo yum --enablerepo=remi install ImageMagick-last.x86_64 ImageMagick-last-devel.x86_64
Miałem ten problem z CentOS 7.2 i ImageMagick 6.9.3-9. Po wielu prób i błędów odkryłem, że 6.9.3- 8 prac, natomiast 6.9.3- 9 ma zależności, które nie doprowadzą do rozwiązania. Na szczęście http://rpm.pbone.net/ znalazł repozytorium ze starszą wersją.
źródło
Wygląda na to, że będziesz potrzebować następujących lub przynajmniej niektórych z poniższych:
Zainstalowanie wszystkich 4 nie powinno powodować tak dużego obciążenia lub zwiększenia wykorzystania miejsca na dysku, ale są to pakiety zwracane, gdy szukałem na http://rpm.pbone.net/ wyrażenia „libHalf.so.4” lub „ na przykład libIlmImf.so.4 '.
źródło
libHalf
(libHalf.so.6
na przykład).Jeśli potrzebujesz również zainstalowanej wersji programistycznej ImageMagicK, możesz uruchomić:
rpm -ivh /root/rpmbuild/RPMS/x86_64/ImageMagick-devel-6.8.0-4.x86_64.rpm
Ten krok będzie wymagany, jeśli planujesz uruchomić powiązania ImagicK (PHP). Aby zainstalować typ iMagicK:
pecl zainstaluj imagick
źródło