DebianテストでのpipによるPIL / Pillowのインストール(Jessie)


19

Debianテスト(Jessie)で、virtualenvビアpipにPILまたはPillow(pythonイメージングライブラリ)をインストールしようとすると、次のエラーが表示されます。

running egg_info
writing Pillow.egg-info/PKG-INFO
writing top-level names to Pillow.egg-info/top_level.txt
writing dependency_links to Pillow.egg-info/dependency_links.txt
warning: manifest_maker: standard file '-c' not found

reading manifest file 'Pillow.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
writing manifest file 'Pillow.egg-info/SOURCES.txt'
running build_ext
building 'PIL._imaging' extension
creating build/temp.linux-x86_64-2.7/libImaging
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -IlibImaging -I/usr/local/include -I/usr/include -I/usr/include/python2.7 -I/usr/include/x86_64-linux-gnu -c _imaging.c -o build/temp.linux-x86_64-2.7/_imaging.o
_imaging.c:76:20: fatal error: Python.h: No such file or directory
 #include "Python.h"
                    ^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

Wheezyでの経験に基づいて、Pillowのすべての依存関係をインストールしましたが、テストでは何かが違うようです。

助言がありますか?

編集

実際、libc6で別の問題を発見しました。私が持っていたバージョンは実験的なものでした。テスト版にダウングレードした後、すべての依存関係を再インストールしましたが、別のエラーが表示されます。

building 'PIL._imagingft' extension
x86_64-linux-gnu-gcc -pthread -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -fPIC -I/usr/include/freetype2 -IlibImaging -I/usr/include/tcl8.5 -I/usr/local/include -I/usr/include -I/usr/include/python2.7 -I/usr/include/x86_64-linux-gnu -c _imagingft.c -o build/temp.linux-x86_64-2.7/_imagingft.o
_imagingft.c:62:31: fatal error: freetype/fterrors.h: No such file or directory
 #include <freetype/fterrors.h>
                               ^
compilation terminated.
error: command 'x86_64-linux-gnu-gcc' failed with exit status 1

libc6混乱状態の実験的なバージョンのようですが、何が悪いのかわかりません。Aptitudeは満たされていない依存関係を表示aptitude install -fせず、何もしません。

また、実際にlinux-headersが関連する場合、インストールしたものは次のとおりです。

  • linux-headers-3.11-2-all
  • linux-headers-3.11-2-all-amd64
  • linux-headers-3.11-2-amd64
  • linux-headers-3.11-2-common
  • linux-headers-3.2.0-4-amd64
  • linux-headers-3.2.0-4-common
  • linux-headers-amd64

カーネルヘッダーをインストールしましたか(エラーは何らかの形で関連しているようです)。
Braiam

1
Linuxヘッダーは無関係であり、Pythonヘッダーが欠落しています。
デニスカースメーカー

回答:


28

Ubuntu 14.04で試してください:

sudo ln -s /usr/include/freetype2 /usr/local/include/freetype

23

Python開発ヘッダー、および場合によっては他の開発パッケージが必要です。それらを取得する最も簡単な方法は次のとおりです。

sudo apt-get build-dep python-imaging

すでにそれを試しました。実際、私は通常、python-imagingシステム全体でをaptitude使用してインストールできますが、実際には使用しようとしませんでした。
アルクス

面白い。そのコマンドの出力は何ですか?
デニスカースメーカー

これは、Ubuntu 14.04
Matt Parrilla

3

Pillowの開発バージョンをインストールすると、2番目の問題も解決されました。この問題に関連している可能性があります。

要約すると、解決策は次のとおりです。

  1. Dennisが言ったように依存関係をインストールします。これには、experimentallibc6 のバージョンをでダウングレードすることも含まれaptitude remove libc6、これによりDOWNGRADE、リポジトリのバージョンにオプションが付与されました。

  2. 枕のトランクバージョンのインストール pip install git+git://github.com/python-imaging/Pillow.git


3

私はDebian 7のテストを使用していますが、私にとっては次のように機能しました。

  1. デニスが言った依存関係のインストール:

    $ sudo apt-get build-dep python-imaging
  2. mrudultが提案するシンボリックリンクを作成します。

    $ sudo ln -s -T /usr/include/freetype2/ /usr/include/freetype
  3. 通常の方法で枕を取り付けます。

    $ pip install Pillow

1

DigitalOceanに新しくインストールしたUbuntu 14.04では、単に実行するだけでこの問題を解決できました。

sudo apt-get install python-dev

python venv内でpip installコマンドを再実行します

pip install Pillow
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.