2013-05-15 39 views
1

我正在尝试使用pip和mingw安装PIL。但它失败如下。如何在Windows中使用pip + mingw安装PIL?

Downloading/unpacking PIL 
    Running setup.py egg_info for package PIL 
    WARNING: '' not a valid package name; please use only.-separated package names in setup.py 

Installing collected packages: PIL 
    Running setup.py install for PIL 
    WARNING: '' not a valid package name; please use only.-separated package names in setup.py 
    building '_imaging' extension 
    C:\MinGW\bin\gcc.exe -mdll -O -Wall -IlibImaging -IC:\Python27\include -IC:\Python27\include -IC:\Python27\PC -c _imaging.c -o build\temp.win32-2.7\Release\_imaging.o 
    _imaging.c: In function 'init_imaging': 
    _imaging.c:3253:15: warning: variable 'd' set but not used [-Wunused-but-set-variable] 
    C:\MinGW\bin\gcc.exe -mdll -O -Wall -IlibImaging -IC:\Python27\include -IC:\Python27\include -IC:\Python27\PC -c decode.c -o build\temp.win32-2.7\Release\decode.o 
    C:\MinGW\bin\gcc.exe -mdll -O -Wall -IlibImaging -IC:\Python27\include -IC:\Python27\include -IC:\Python27\PC -c encode.c -o build\temp.win32-2.7\Release\encode.o 
    C:\MinGW\bin\gcc.exe -mdll -O -Wall -IlibImaging -IC:\Python27\include -IC:\Python27\include -IC:\Python27\PC -c map.c -o build\temp.win32-2.7\Release\map.o 
    In file included from c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/winnt.h:192:0, 
        from c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/windef.h:253, 
        from c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/windows.h:48, 
        from map.c:35: 
    c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:50:21: error: duplicate 'signed' 
    c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:50:21: error: two or more data types in declaration specifiers 
    c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:51:22: error: duplicate 'short' 
    c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:56:23: error: duplicate 'unsigned' 
    c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:56:23: error: two or more data types in declaration specifiers 
    c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:57:24: error: duplicate 'unsigned' 
    c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:57:24: error: duplicate 'short' 
    error: command 'gcc' failed with exit status 1 
    Complete output from command C:\Python27\python.exe -c "import setuptools;__file__='c:\\users\\marshall\\appdata\\local\\temp\\pip-build-marshall\\PIL\\setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\marshall\appdata\local\temp\pip-pnnyve-record\install-record.txt --single-version-externally-managed: 
    WARNING: '' not a valid package name; please use only.-separated package names in setup.py 

running install 

running build 

running build_py 

running build_ext 

building '_imaging' extension 

C:\MinGW\bin\gcc.exe -mdll -O -Wall -IlibImaging -IC:\Python27\include -IC:\Python27\include -IC:\Python27\PC -c _imaging.c -o build\temp.win32-2.7\Release\_imaging.o 

_imaging.c: In function 'init_imaging': 

_imaging.c:3253:15: warning: variable 'd' set but not used [-Wunused-but-set-variable] 

C:\MinGW\bin\gcc.exe -mdll -O -Wall -IlibImaging -IC:\Python27\include -IC:\Python27\include -IC:\Python27\PC -c decode.c -o build\temp.win32-2.7\Release\decode.o 

C:\MinGW\bin\gcc.exe -mdll -O -Wall -IlibImaging -IC:\Python27\include -IC:\Python27\include -IC:\Python27\PC -c encode.c -o build\temp.win32-2.7\Release\encode.o 

C:\MinGW\bin\gcc.exe -mdll -O -Wall -IlibImaging -IC:\Python27\include -IC:\Python27\include -IC:\Python27\PC -c map.c -o build\temp.win32-2.7\Release\map.o 

In file included from c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/winnt.h:192:0, 

       from c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/windef.h:253, 

       from c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/windows.h:48, 

       from map.c:35: 

c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:50:21: error: duplicate 'signed' 

c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:50:21: error: two or more data types in declaration specifiers 

c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:51:22: error: duplicate 'short' 

c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:56:23: error: duplicate 'unsigned' 

c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:56:23: error: two or more data types in declaration specifiers 

c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:57:24: error: duplicate 'unsigned' 

c:\mingw\bin\../lib/gcc/mingw32/4.7.2/../../../../include/basetsd.h:57:24: error: duplicate 'short' 

error: command 'gcc' failed with exit status 1 

---------------------------------------- 
Command C:\Python27\python.exe -c "import setuptools;__file__='c:\\users\\marshall\\appdata\\local\\temp\\pip-build-marshall\\PIL\\setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\users\marshall\appdata\local\temp\pip-pnnyve-record\install-record.txt --single-version-externally-managed failed with error code 1 in c:\users\marshall\appdata\local\temp\pip-build-marshall\PIL 
Storing complete log in C:\Users\marshall\pip\pip.log 

我该如何解决这个问题?

回答

0

我建议使用预建的安装程序。请参阅PIL Unofficial Windows Binary,但我强烈建议使用Pillow(也可从同一链接以安装程序的形式提供)。

+0

枕头其实安装使用pip很好,谢谢!但是,如果你真的不能使用pip在Windows中安装基本软件包,这似乎是一种耻辱。 – marshall

+0

@marshall如果软件包需要编译器,这通常只是一个问题,但是,这并不总是方便。 –

1

INT8,INT16,UINT8,UINT16定义INT PIL来源

你可以在C添加#ifndef..#endif:\ MinGW的\包括\ basetsd.h:

+#ifndef INT8 
typedef signed char INT8; 
+#endif 

每一个类型。 (其中“+”表示增加行)

它的工作原理。