JPEG görüntü formatı desteği nasıl eklenir


12

Imagemagick'i kurduktan sonra jpg görüntüsü ile test ettim, şöyle:

identify 1.jpg

Ama bu sonucu aldım:

identify: no decode delegate for this image format `1.jpg' @ error/constitute.c/ReadImage/550.

Sonra, JPEG formatı için destek eklemeye çalıştım:

yum install libjpeg libjpeg-devel

ama aldım:

Setting up Install Process
No package libjpeg available.
No package libjpeg-devel available.
Nothing to do

Ben apt-get güncellemek gerektiğini düşündüm, yaptım:

apt-get install libjpeg libjpeg-devel

ama aldım:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package libjpeg
E: Unable to locate package libjpeg-devel

Bu kütüphaneleri kurmanın kolay bir yolu var mı? Ubuntu 12.04 kullanıyorum.


2
Neden kullanıyorsun yum? Bu, farklı bir dağıtım için paket yöneticisidir (Red Hat & Fedora) ve eğer yumimagemagick'i kurmuşsanız, kütüphaneleri bulamadığı için hiç şaşırmadım! Ne yaptığınızı gerçekten bilmiyorsanız sadece apt-get ile yazılım yüklemelisiniz ! Ayrıca, "Ubuntu 12" yeterince spesifik değil ... Ubuntu'nun "12" ile başlayan iki sürümü vardır: 12.04 ve 12.10. Ubuntu sürümleri yayın tarihine dayanmaktadır: 12.04 '12 Nisan (# 04 ay) yayınlandı ve 12.10 Ekim 12 '12 yayınlandı. Lütfen emin olun ve belirtin!
otuzüçlük

Ubuntu Sürüm 12.04 (kesin) 32-bitim var, yum ile imagemagick'i yüklemedim, bunun yerine tar xvfz ImageMagick.tar.gz, cd ImageMagick-6.8.0, cd ImageMagick-6.8.0-4, ./configure , yapmak, sudo yapmak yüklemek, sudo ldconfig / usr / local / lib
Samir Sabri

deneyin apt-get install libjpeg-dev
Shashank Singla

Bu gerçekten harika bir yanıt var http://askubuntu.com/a/746195
L. Percy

dünyada herhangi bir imagemagick paketi önceden paketlenmiş JPEG desteği olmadan HERHANGİ bir kullanım olabilir ?! Peynir, ekmek veya domates sosu olmadan pizza satmak gibi.
Sridhar Sarnobat

Yanıtlar:


11

Http://www.ijg.org/files/jpegsrc.v8c.tar.gz adresinde bulunan jpeg kodlama kitaplığını kaynaktan yükleyerek sorunu çözdüm .

cd /usr/local/src
tar xvfz jpeg-8c.tar.gz
cd jpeg-8c
./configure --enable-shared --prefix=$CONFIGURE_PREFIX
make
sudo make install

Sonra ImageMagick'i kaynaktan yeniden yükledim:

cd /usr/local/src
tar xvfz ImageMagick-6.6.9-5.tar.gz
cd ImageMagick-6.6.9-5
export CPPFLAGS=-I/usr/local/include
export LDFLAGS=-L/usr/local/lib
./configure --prefix=/usr/local --disable-static --with-modules --without-perl --without-magick-plus-plus --with-quantum-depth=8 --disable-openmp
make
sudo make install

Şimdi çalışıyor, şöyle test ettim:

sam@ubuntu:~/RubymineProjects/project/tmp$ identify 1.jpg
1.jpg JPEG 128x106 128x106+0+0 8-bit sRGB 2.22KB 0.000u 0:00.000

Bu benim için çalıştı. Dışa aktarma LD_LIBRARY_PATH = $ LD_LIBRARY_PATH eklemek zorunda kaldım: / usr / local / lib / in .profile
mv288

Sadece ilk jpegsrc kaynağından yükledim ve ImageMagick üzerinden yeniden yükledim apt-getve çok çalıştı.
13'te kyng

6

ImageMagick'i kaynaktan oluşturmaya karar verirseniz, tüm bağımlılıkları manuel olarak çözmeye hazır olmanız gerekir. Acil bir ihtiyacınız olmadığı sürece, Ubuntu'ya tüm yazılımı bir depodan (resmi depolar veya PPA) yüklemelisiniz.

Imagemagick'i APT ( apt-get, Synaptic, Software Center, vb.) Kullanarak kurarsanız , makinemde onayladığım gibi JPG dosyaları iyi çalışır.

Kaynaktan inşa etme nedeniniz daha yeni bir sürüm elde etmekse, en son sürümü izleyen bir PPA arayın. Geliştirmeye yardımcı olmak için kaynaktan inşa ediyorsanız, Imagemagick milletinden kaynağından başarılı bir şekilde inşa etmek için gerekenleri öğrenmelisiniz. Çalıştırmadan önce bazı bayraklar belirtmeniz ./configureveya bazı geliştirme kitaplığı yüklemeniz gerekebilir ./configure.

Ancak normalde, kaynaktan inşa etmek işleri gereksiz yere karmaşıklaştırır.

Bu arada, Red Hat ve Ubuntu paketler için farklı isimler kullanıyor. Bu nedenle yum, eksik bir paketten şikayet ederse apt-get, bu adla bir paket bulamazsanız şaşırtıcı olmamalıdır . Gerçekten çok iyi bir nedeniniz olmadığı sürece paket yöneticilerini bir sistemde karıştırmamalısınız. O zaman bile, önce diğer tüm seçenekleri deneyin.


APT (apt-get, Synaptic, Software Center, vb.) Kullanarak Imagemagick kurulumu JPG dosyaları sorununu çözecekse, kaynaktan inşa etmek için özel bir nedenim yok, onunla gideceğim, lütfen Imagemagick'in nasıl kurulacağını gösterebilir misiniz? sizin gibi APT kullanıyor musunuz?
Samir Sabri

@SamirSabri: Yazılım Merkezinde veya Synaptic'te arama yapmanız yeterlidir. Veya üzerinde kullanım sekmesi tamamlama apt-getkomutunu keşfetmeye: sudo apt-get install imagemagick.
Scott Severance

Bu arada, yöntemimi kullanarak yüklemeye çalışmadan önce imagemagick'i yüklemek için önceki tüm denemeleri kaldırmanızı kesinlikle öneririz. Aksi takdirde, çatışmalarla sonuçlanabilir.
Scott Severance

Önceki denemeleri kaldırmış olmama rağmen, jpg görüntüsünü tanımlarken bir hata alıyorum, şöyle: sam @ ubuntu: ~ / RubymineProjects / project / tmp $ identify 1.jpg define: Bu görüntü formatı için kod çözücü delege yok `` 1.jpg '' @ error / constitute.c / ReadImage / 550.
Samir Sabri

3

O Not no decode delegatehatası (oldukça karışıklığa) imagemagic'den (ya da bir bölümü) kaynaklanabilir dosyayı görmediklerine. Yani, imagemagick yeniden kontrol etmek çalıştırmadan önce identify -list formatve convert -list configureJPEG formatında desteklenip desteklenmediğini ve bu ise, sorun muhtemelen başka bir yerde olacak.

Örneğin, convert -resize 50% foo\ bar.jpgbana bir no decode delegate for this image formateror verdi , ama convert -resize 50% 'foo bar.jpg'mükemmel çalıştı.


1

Php5-imagick'i yeni yüklediyseniz, tam imagemagick paketini de yüklemeyi deneyin. Bu, jpeg gibi gerekli tüm kütüphaneleri kuracaktır.

sudo apt-get install imagemagick

Ardından tüm kitaplıkları yeniden yüklemek için web sunucunuzu yeniden başlatın:

sudo service apache2 restart

JPEG kod çözme artık hatasız çalışmalıdır.


0

denedin mi :

sudo apt-get install libjpeg62

yukarıdaki komut işe yaramazsa, lütfen aşağıdaki bağlantıdan geçin.

http://psx-scene.com/forums/f150/help-install-libjpeg-libpng-ubuntu-9-10-livecd-64122/

Onlara bildirin, eğer bu yardımcı olsaydı, iyi şanslar ... :)


Çözümünüzü denedim, aldım: Paket listelerini okuma ... Yapı bağımlılığı ağacı tamamlandı Durum bilgilerini okuma ... Tamamlandı libjpeg62 zaten en yeni sürüm. 0 yükseltildi, 0 yeni yüklendi, kaldırmak için 0 ve 6 yükseltilmedi. Ancak, jpg görüntüsünü tanımlarken hala bir hata alıyorum: sam @ ubuntu: ~ / RubymineProjects / project / tmp $ identify 1.jpg identify: Bu görüntü formatı için kod çözme delegesi yok `1.jpg '@ error / constitute.c / ReadImage / 550.
Samir Sabri

tamam, bunu buldum: blog.ericlamb.net/2008/11/… lütfen, kontrol edin ve bana bildirin, cevabınız için teşekkürler.
Rishi Kolvekar

Son yorumunuzu okumadan önce düzelttim, teşekkürler, aşağıdaki
cevabımda var

harika geliyor !!! :)
Rishi Kolvekar

0

| En kolay yol | Yazılım merkezinden " Synaptic Package Manager " uygulamasını indirin . -> eski libjpeg paketleri kaldırıldı * -> libjpeg8 & libjpeg-turbo8 & libjpeg-turbo8-dev.

Not: Aynı hatayı alıyordum. Çözülmem 2 günümü aldı. Ben jpg görüntü göstermeye çalışırken benim hatam:

no decode delegate for this image format `jpeg' @ error/constitute.c/readimage/504

Sonra Yazılım merkezinden " Synaptic Package Manager " ı indiriyorum . -> eski libjpeg paketleri kaldırıldı * -> libjpeg8 & libjpeg-turbo8 & libjpeg-turbo8-dev.

(* synaptics paket yöneticisi diğer pakete bağımlılık gösterecek, sadece eski bağımsız libjpeg paketlerini kaldıracaktır)

Bundan sonra herhangi bir hata korkusu olmadan JPEG görüntülerini açabiliyorum.

Umarım yardımcı olur :)

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.