Po zainstalowaniu Imagemagick przetestowałem go z obrazem jpg, takim jak ten:
identify 1.jpg
Ale mam ten wynik:
identify: no decode delegate for this image format `1.jpg' @ error/constitute.c/ReadImage/550.
Następnie próbowałem dodać obsługę formatu JPEG przez:
yum install libjpeg libjpeg-devel
ale mam:
Setting up Install Process
No package libjpeg available.
No package libjpeg-devel available.
Nothing to do
Pomyślałem, że muszę zaktualizować apt-get, zrobiłem:
apt-get install libjpeg libjpeg-devel
ale mam:
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libjpeg
E: Unable to locate package libjpeg-devel
Czy istnieje prosty sposób na zainstalowanie tych bibliotek? Używam Ubuntu 12.04.
imagemagick
jpeg
Samir Sabri
źródło
źródło
yum
? To jest menedżer pakietów dla innej dystrybucji (Red Hat i Fedora), a jeśliyum
instalowałeś imagemagick, wcale nie jestem zaskoczony, że nie może znaleźć bibliotek! Powinieneś instalować oprogramowanie tylko z apt-get, chyba że naprawdę wiesz, co robisz! Ponadto „Ubuntu 12” nie jest wystarczająco szczegółowe… Istnieją dwie wersje Ubuntu, które zaczynają się od „12”: 12.04 i 12.10. Wersje Ubuntu oparte są na dacie wydania: wersja 12.04 została wydana w kwietniu (miesiąc nr 04) z '12, a wersja 12.10 została wydana w październiku '12. Proszę, upewnij się i określ!Odpowiedzi:
Rozwiązałem problem, instalując ze źródła bibliotekę kodowania jpeg dostępną pod adresem http://www.ijg.org/files/jpegsrc.v8c.tar.gz .
Następnie ponownie zainstalowałem ImageMagick ze źródła:
Teraz działa, przetestowałem go w następujący sposób:
źródło
apt-get
i on też działał.Jeśli zdecydujesz się zbudować ImageMagick ze źródła, musisz być przygotowany do ręcznego rozwiązania wszystkich zależności. O ile nie masz pilnej potrzeby, powinieneś zainstalować całe oprogramowanie na Ubuntu z repozytorium - oficjalne repozytorium lub PPA.
Jeśli zainstalujesz Imagemagick za pomocą APT (
apt-get
, Synaptic, Software Center itp.), To pliki JPG będą działać dobrze, co potwierdziłem na moim komputerze.Jeśli powodem budowania ze źródła jest zdobycie nowszej wersji, poszukaj PPA, który śledzi najnowszą wersję. Jeśli budujesz ze źródła, aby pomóc w rozwoju, powinieneś dowiedzieć się od ludzi Imagemagick, co jest potrzebne do pomyślnego zbudowania go ze źródła. Być może
./configure
przed uruchomieniem musisz podać flagę lub zainstalować bibliotekę programistyczną./configure
.Ale zwykle budowanie ze źródła po prostu niepotrzebnie komplikuje rzeczy.
Aha, przy okazji, Red Hat i Ubuntu używają różnych nazw dla pakietów. Więc jeśli
yum
narzeka na brakujący pakiet, nie powinno dziwić, żeapt-get
nie mogę znaleźć pakietu o tej nazwie. Nie powinieneś mieszać menedżerów pakietów w systemie, chyba że masz naprawdę dobry powód, aby to zrobić. Nawet wtedy wypróbuj najpierw każdą inną opcję.źródło
apt-get
odkryć komendę:sudo apt-get install imagemagick
.Zauważ, że
no decode delegate
błąd może (dość myląco) wynikać z faktu, że imagemagick (lub jego część) nie znalazł pliku. Więc przed uruchomieniem, aby ponownie zainstalować ImageMagick, sprawdź uidentify -list format
iconvert -list configure
czy format JPEG jest obsługiwany, a jeśli jest, to problem będzie prawdopodobnie gdzieś indziej.Na przykład
convert -resize 50% foo\ bar.jpg
dał mi błądno decode delegate for this image format
, aleconvert -resize 50% 'foo bar.jpg'
działał idealnie.źródło
Jeśli właśnie zainstalowałeś php5-imagick, spróbuj także zainstalować pełny pakiet imagemagick. Spowoduje to zainstalowanie wszystkich wymaganych bibliotek, takich jak biblioteka jpeg.
sudo apt-get install imagemagick
Następnie uruchom ponownie serwer WWW, aby ponownie załadować wszystkie biblioteki:
sudo service apache2 restart
Dekodowanie JPEG powinno teraz działać bezbłędnie.
źródło
czy próbowałeś :
sudo apt-get install libjpeg62
jeśli powyższe polecenie nie działa, przejdź przez poniższy link.
http://psx-scene.com/forums/f150/help-install-libjpeg-libpng-ubuntu-9-10-livecd-64122/
Daj im znać, jeśli to było pomocne, powodzenia ... :)
źródło
| Najłatwiejszy sposób | Pobierz „ Synaptic Package Manager ” z centrum oprogramowania. -> usunięto starsze pakiety libjpeg * -> przeinstalowano libjpeg8 i libjpeg-turbo8 i libjpeg-turbo8-dev.
PS: Otrzymywałem ten sam błąd. Rozwiązanie zajęło mi 2 dni. Mój błąd podczas próby wyświetlenia obrazu jpg:
Następnie pobieram „ Synaptic Package Manager ” z centrum oprogramowania. -> usunięto starsze pakiety libjpeg * -> przeinstalowałem libjpeg8 i libjpeg-turbo8 i libjpeg-turbo8-dev.
(* Menedżer pakietów synaptics pokaże zależność od innego pakietu, usuń tylko starsze niezależne pakiety libjpeg)
Następnie mogę otwierać obrazy JPEG bez obawy o błąd.
Mam nadzieję, że to pomoże :)
źródło