1

アマゾンインスタンスで「pipinstallPIL」を実行しようとしていますが、このエラーが発生し続けます。何か提案はありますか?

PILのダウンロード/解凍パッケージPILのsetup.pyegg_infoを実行します

警告:''は有効なパッケージ名ではありません。のみを使用してください。-setup.pyで区切られたパッケージ名収集されたパッケージのインストール:PIL

PILのsetup.pyインストールを実行する

WARNING: '' not a valid package name; please use only.-separated package names in setup.py
building '_imaging' extension
gcc -pthread -fno-strict-aliasing -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -DNDEBUG -O2 -g -pipe -Wall -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector --param=ssp-buffer-size=4 -m64 -mtune=generic -D_GNU_SOURCE -fPIC -fwrapv -fPIC -DHAVE_LIBZ -IlibImaging -I/home/ec2-user/food-chute/foodchute/venv/include -I/usr/local/include -I/usr/include -I/usr/include/python2.6 -c _imaging.c -o build/temp.linux-x86_64-2.6/_imaging.o
_imaging.c:75:20: error: Python.h: No such file or directory
In file included from libImaging/Imaging.h:14,
                 from _imaging.c:77:
libImaging/ImPlatform.h:14:2: error: #error Sorry, this library requires support for ANSI prototypes.
libImaging/ImPlatform.h:17:2: error: #error Sorry, this library requires ANSI header files.
libImaging/ImPlatform.h:55:2: error: #error Cannot find required 32-bit integer type
In file included from _imaging.c:77:
libImaging/Imaging.h:90: error: expected specifier-qualifier-list before ‘INT32’
libImaging/Imaging.h:264: error: expected specifier-qualifier-list before ‘INT32’
libImaging/Imaging.h:395: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘ImagingCRC32’
_imaging.c:124: error: expected specifier-qualifier-list before ‘PyObject_HEAD’
_imaging.c:129: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘PyTypeObject’
_imaging.c:143: error: expected specifier-qualifier-list before ‘PyObject_HEAD’
_imaging.c:151: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘PyTypeObject’
_imaging.c:154: error: expected specifier-qualifier-list before ‘PyObject_HEAD’
_imaging.c:160: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘PyTypeObject’
_imaging.c:165: error: expected specifier-qualifier-list before ‘PyObject_HEAD’
_imaging.c:170: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘PyTypeObject’
_imaging.c:172: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘*’ token
_imaging.c: In function ‘_dealloc’:
_imaging.c:204: error: ‘ImagingObject’ has no member named ‘access’

エラー:コマンド'gcc'が終了ステータス1で失敗しました

4

2 に答える 2

3

これが発生する理由は、ec2にはデフォルトでgccバージョン4.4.6があり、PythonImagingLibraryをコンパイルできないためです。ただし、ec2 Webサイトにアクセスすると、次のようにしてこの問題を解決できます。

While GCC 4.4.6 remains the default, we have included GCC 4.6.2, specifically for use on EC2 instances that support AVX. Run yum install gcc46 in order to get the packages. GCC 4.6 enables the Amazon Linux AMI to take advantage of the AVX support available on cc2.8xlarge instance types.

ソース:http ://aws.amazon.com/amazon-linux-ami/2012.03-release-notes/

于 2012-07-25T15:40:10.440 に答える
0

私にとって、この問題の解決策は、実際にはpython-develをインストールすることでした。

于 2013-12-09T18:31:23.073 に答える