PILは私のシステムでJPEGをサポートしています。
アップロードを行うたびに、コードが次のように失敗します。
File "PIL/Image.py", line 375, in _getdecoder
raise IOError("decoder %s not available" % decoder_name)
IOError: decoder jpeg not available
どうすればこれを解決できますか?
PILは私のシステムでJPEGをサポートしています。
アップロードを行うたびに、コードが次のように失敗します。
File "PIL/Image.py", line 375, in _getdecoder
raise IOError("decoder %s not available" % decoder_name)
IOError: decoder jpeg not available
どうすればこれを解決できますか?
libjpeg-devは、pillow(またはPIL)を使用してjpegを処理できるようにする必要があるため、インストールしてから、pillowを再コンパイルする必要があります。また、Ubuntu14.04ではlibjpeg8-devが必要なようです。
まだPILを使用している場合は、最近は枕を使用する必要があります。そのため、最初pip uninstall PIL
にこれらの手順に従って切り替える前に、またはPILを使い続ける正当な理由がある場合は、以下の「枕」を「PIL」に置き換えてください。 )。
Ubuntuの場合:
# install libjpeg-dev with apt
sudo apt-get install libjpeg-dev
# if you're on Ubuntu 14.04, also install this
sudo apt-get install libjpeg8-dev
# reinstall pillow
pip install --no-cache-dir -I pillow
それでも問題が解決しない場合は、64ビットまたは32ビットのUbuntuを使用しているかどうかに応じて、以下のいずれかを試してください。
Ubuntu x64の場合:
sudo ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib
sudo ln -s /usr/lib/x86_64-linux-gnu/libfreetype.so /usr/lib
sudo ln -s /usr/lib/x86_64-linux-gnu/libz.so /usr/lib
またはUbuntu32ビットの場合:
sudo ln -s /usr/lib/i386-linux-gnu/libjpeg.so /usr/lib/
sudo ln -s /usr/lib/i386-linux-gnu/libfreetype.so.6 /usr/lib/
sudo ln -s /usr/lib/i386-linux-gnu/libz.so /usr/lib/
次に枕を再インストールします。
pip install --no-cache-dir -I pillow
(コメントからのフィードバックを含めるように編集します。これは32ビットでは異なることを指摘してくれたCharles Offenbacherと、の使用を提案してくれたt-martに感謝します--no-cache-dir
)。
OSXの場合は、次のバイナリを使用してlibpngとlibjpegをシステム全体にインストールしました。
(virtualenvのpipを介して)すでにPILをインストールしているので、次のコマンドを実行しました。
pip uninstall PIL
pip install PIL --upgrade
これでdecoder JPEG not available
エラーは解決しました。
更新(4/24/14):
新しいバージョンのpipでは、外部ソースからライブラリ(PILを含む)をダウンロードするために追加のフラグが必要です。次のことを試してください。
pip install PIL --allow-external PIL --allow-unverified PIL
追加情報については、次の回答を参照してください。pip install PIL dont install into virtualenv
更新2:
OSX Mavericksの場合は、以下の@RicardoGonzalesコメントARCHFLAGS
としてフラグを設定することをお勧めします。
ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future pip install PIL --allow-external PIL --allow-unverified PIL
これが私のために働いた唯一の方法です。パッケージのインストールとPILの再インストールは機能しませんでした。
ubuntuで、必要なパッケージをインストールします。
sudo apt-get install libjpeg-dev
libfreetype6 libfreetype6-dev zlib1g-dev
(他のデコーダーを有効にするためにインストールすることもできます)。
次に、PILを枕に置き換えます。
pip uninstall PIL
pip install pillow
以下はubuntu12.04で動作します:
pip uninstall PIL
apt-get install libjpeg-dev
apt-get install libfreetype6-dev
apt-get install zlib1g-dev
apt-get install libpng12-dev
pip install PIL --upgrade
「-JPEGsupportavaliable」が表示された場合、それは機能することを意味します。
ただし、jpeg画像を編集しても機能しない場合は、Pythonパスを確認してください。私のPythonパスが見つからなかったので、このファイルに次のコードを追加して/usr/local/lib/python2.7/dist-packages/PIL-1.1.7-py2.7-linux-x86_64.egg/
編集します。~/.bashrc
編集:export PYTHONPATH=$PYTHONPATH:/usr/local/lib/python2.7/dist-packages/PIL-1.1.7-py2.7-linux-x86_64.egg/
そして、ついに、それは動作します!
Fedora 17では、インストールしてからlibjpeg-devel
再インストールする必要がありましたPIL
。
sudo yum install --assumeyes libjpeg-devel
sudo pip-python install --upgrade PIL
Roloの答えは素晴らしいですが、pipキャッシュ(pip 7で導入)をバイパスしてPillowを再インストールする必要がありました。そうしないと、正しく再コンパイルされません!!! コマンドは次のとおりです。
pip install -I --no-cache-dir -v Pillow
ログを読み取ると、枕が適切に構成されているかどうかを確認できます。
PIL SETUP SUMMARY
--------------------------------------------------------------------
version Pillow 2.8.2
platform linux 3.4.3 (default, May 25 2015, 15:44:26)
[GCC 4.8.2]
--------------------------------------------------------------------
*** TKINTER support not available
--- JPEG support available
*** OPENJPEG (JPEG2000) support not available
--- ZLIB (PNG/ZIP) support available
--- LIBTIFF support available
--- FREETYPE2 support available
*** LITTLECMS2 support not available
*** WEBP support not available
*** WEBPMUX support not available
--------------------------------------------------------------------
ご覧のとおり、以前はapt(libjpeg-dev libpng12-dev libfreetype6-dev libtiff-dev)を介して必要なライブラリをインストールしたため、jpg、tiffなどのサポートが有効になっています。
Mac OS X Mavericks(10.9.3)では、次のようにしてこれを解決しました。
brewによるlibjpegのインストール(パッケージ管理システム)
brew install libjpeg
枕を再インストールします(私はPILの代わりに枕を使用します)
pipinstall-I枕
apt-get install libjpeg-dev
apt-get install libfreetype6-dev
apt-get install zlib1g-dev
apt-get install libpng12-dev
これらをインストールし、ソースからコンパイルしたため、何らかの理由で機能しなかったため、必ずpipを使用してPILをインストールしてください。
私はすでに使用Pillow
していて、同じエラーが発生しました。インストールしようとしたlibjpeg
かlibjpeg-dev
、他の人が提案したように、(新しい)バージョンがすでにインストールされていると言われました。
結局、必要なのは再インストールだけでしたPillow
:
sudo pip uninstall Pillow
sudo pip install Pillow
私はzeantsoiの投稿にコメントするには初心者です;(。だからここで彼は10.9.1のOSXで解決するために私がする必要があったことを
IOError:デコーダーjpegは利用できません
1)Xcodeツールをインストールします(ターミナルを開いて実行します: xcode-select --install
)-この投稿から引用:Mac OSX10.9以降はPILをインストールできません
2)次のリンクからlibpngおよびlibjpegパッケージ(コンボインストーラー)をインストールします:http://ethan.tira-thompson.com/Mac_OS_X_Ports.html
3)再起動します(必須かどうかはわかりません)
4)実行時にPILを再インストールしますpip install -I PIL
(問題が発生する前に最初にPILをインストールしたため)
この助けを願って、もっと混乱しないでください...
_oho
この質問はかなり前に投稿されたもので、ほとんどの回答もかなり古いものです。したがって、これを理解するために何時間も費やしたとき、何も機能せず、この投稿のすべての提案を試しました。
DjangoアバターフォームでJPGをアップロードしようとすると、まだ標準のJPEGエラーが発生していました。
raise IOError("decoder %s not available" % decoder_name)
OSError: decoder jpeg not available
次に、Ubuntu 12.04のリポジトリを確認し、の追加パッケージに気づきましたlibjpeg
。これらをインストールすると、問題は解決しました。
sudo apt-get install libjpeg62 libjpeg62-dev
これらをインストールすると、、、およびが削除さlibjpeg-dev
れlibjpeg-turbo8-dev
ますlibjpeg8-dev
。
これが2015年以降の誰かに役立つことを願っています!
乾杯
ここでも同じ問題がありますが、PILではなくPillowを使用していることを除けばJPEG support available
、まだ問題が発生しています。IOError: decoder/encoder jpeg not available
上記のすべてとそれ以上を試しましたが、何sudo pip install
時間も経ってから、と組み合わせて使用すると期待どおりに機能しないことに気付きましたvirtualenv
。愚かな私。
を使用すると、virtualenvがアクティブ化されていないsudo
新しいシェルでコマンドが効果的に起動されます(これについての私の理解は完全には正しくない可能性があります)。つまり、パッケージは代わりにグローバル環境にインストールされます。(これは物事を台無しにしました、私は枕の2つの異なるインストールを持っていたと思います。)
私は物事をクリーンアップし、ユーザーをrootに変更し、virtualenvに再インストールしましたが、これで動作します。
うまくいけば、これは誰かを助けるでしょう!
Fedoraの場合
前提条件を
sudo dnf install make automake gcc gcc-c++ kernel-devel rpm-build libjpeg-devel zlib-devel python-devel
インストールする今すぐPillowをインストールする
sudo pip install pillow
注-libjpegおよびzlibの場合、Fedora / CentOS /RedHatにlibjpeg-develおよびzlib-develパッケージをインストールしています。
まず、Pythonをアンインストールするだけでなく、隠しフォルダーuser / appData内のPythonフォルダーを削除する必要がありました(これは大きな頭痛の種でした)。次に、WinPythonディストリビューションをインストールしました:http ://code.google.com/p/winpython/これにはPILが含まれています
Mac OS Mountain Lionを使用している場合は、zeantsoiの回答に従いましたが、機能しません。
私はついにこの投稿の解決策に行き着きました:http://appelfreelance.com/2010/06/libjpeg-pil-snow-leopard-python2-6-_jpeg_resync_to_restart/
今、私はjpegのスクリプトをうまく実行しています!