55

PIL を使用して django アプリで JPEG 作業を行うために PIL を使用しようとしましたが、この IOError が発生しています。どうすればよいかわかりません。

""decoder jpeg not available""

サーバーに JPEG デコーダーがありませんか? もしそうなら、どうすれば修正できますか?

4

8 に答える 8

73

著者「エドワード」からこの回答を見つけました

正確な Ubuntu では、PIL は jpeg ライブラリ ファイルがインストールされていても、それらを見つけられません。これを修正する最も簡単な方法は、jpeg dev パッケージをインストールした後にシンボリック リンクを作成することです。したがって、追加の手順が必要でした:

x64 OS の場合

pip uninstall PIL
sudo apt-get install libjpeg8-dev
sudo ln -s /usr/lib/x86_64-linux-gnu/libjpeg.so /usr/lib
pip install PIL

x32 OS の場合

pip uninstall PIL
sudo apt-get install libjpeg8-dev
sudo ln -s /usr/lib/i386-linux-gnu/libjpeg.so /usr/lib
pip install PIL

これが Ubuntu Linux 12.04 で機能していることを確認しました。


Macユーザーの場合は、 Xcode とコマンド ライン ツールをインストールする必要があります。これを行う方法を読む

于 2012-09-06T13:24:13.437 に答える
60

最初にjpegライブラリをインストールしてから、PILを再インストールする必要があります。たとえば、CentOSを使用して、libjpegをインストールするには、

sudo yum install -y libjpeg-devel

使用しているLinuxの種類によって異なります。そして、ここで古いPILを削除する必要があります

rm -rf /usr/lib/python2.6/site-packages/PIL-1.1.7-py2.6-linux-x86_64.egg/

次に、PILをインストールします

sudo easy_install PIL
于 2011-01-08T07:05:35.843 に答える
20

libjpeg を使用して virtualenv に pilをインストールすると、より強力な答えが見つかります。

私にとって、Ubutuで最終的に機能したのは次のとおりです。

pip uninstall PIL
sudo apt-get install libjpeg8-dev
pip install PIL

Python Imaging Library (PIL) は、jpeg ライブラリのバージョンと場所について非常にうるさいようです。また、PIL は C で記述されてコンパイルされるため、ランタイム バージョンに加えて、ライブラリの開発バージョンが必要です。

于 2012-01-19T21:34:24.387 に答える
6

共有ブルーホスト サーバーを使用しているため、sudo 権限がありません。そのため、これらの sudo apt-get jpeg コマンドを実行できません。結局走りました

pip uninstall pil
pip install pillow

どうやら枕はjpegのサポートを見つけることができました。

于 2013-02-12T19:37:11.407 に答える
3

Imaging のインストール フォルダに selftest.py があります。次を試してください。

python selftest.py

次のようなものが表示されます。

--------------------------------------------------------------------
*** PIL CORE support not installed
*** TKINTER support not installed
--- JPEG support ok
--- ZLIB (PNG/ZIP) support ok
*** FREETYPE2 support not installed
*** LITTLECMS support not installed
--------------------------------------------------------------------

JPEG サポートが利用できない場合、Centos:

yum install libjpeg-devel
yum install freetype-devel 
yum install libpng-devel
于 2013-10-28T03:29:21.517 に答える
3

Mac のユーザーは、ここからライブラリをダウンロードできます: http://ethan.tira-thompson.com/Mac_OS_X_Ports.html。次に、PIL をアンインストールしてインストールします

于 2013-03-16T21:50:28.230 に答える
0

ソースから PIL をビルドできます: http://effbot.org/zone/pil-decoder-jpeg-not-available.htm

于 2011-01-08T04:02:21.967 に答える
0

Debian ディストリビューションでは、libjpeg8-dev の代わりに libjpeg62-turbo-dev を使用します

于 2016-01-02T11:36:39.837 に答える