1

我安装了 MinGW GCC,将路径添加到 PATH 变量,在我的 Python 安装中的文件夹 distutils.cfg Lib / distutils 中创建文件。我尝试使用 Pip 安装或下载源代码并运行“python setup.py install”。我也尝试将它virtualenv直接安装到系统中。这是 Pip 的日志:

    ------------------------------------------------------------
C:\entorno\Scripts\pip-script.py run on 02/14/13 15:33:32
Downloading/unpacking pillow

  Running setup.py egg_info for package pillow

    running egg_info
    writing pip-egg-info\Pillow.egg-info\PKG-INFO
    writing top-level names to pip-egg-info\Pillow.egg-info\top_level.txt
    writing dependency_links to pip-egg-info\Pillow.egg-info\dependency_links.txt
    C:\Python27\Lib\distutils\dist.py:267: UserWarning: Unknown distribution option: 'use_2to3'

      warnings.warn(msg)

    warning: manifest_maker: standard file '-c' not found


    reading manifest file 'pip-egg-info\Pillow.egg-info\SOURCES.txt'
    reading manifest template 'MANIFEST.in'
    warning: no previously-included files found matching '.hgignore'

    warning: no previously-included files found matching '.hgtags'

    warning: no previously-included files found matching 'BUILDME.bat'

    warning: no previously-included files found matching 'make-manifest.py'

    warning: no previously-included files found matching 'SHIP'

    warning: no previously-included files found matching 'SHIP.bat'

    warning: no previously-included files matching '*' found under directory 'Tests'

    writing manifest file 'pip-egg-info\Pillow.egg-info\SOURCES.txt'
  Source in c:\entorno\build\pillow has version 1.7.8, which satisfies requirement pillow
Installing collected packages: pillow

  Running setup.py install for pillow

    Running command C:\entorno\Scripts\python.exe -c "import setuptools;__file__='C:\\entorno\\build\\pillow\\setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\docume~1\aaa\config~1\temp\pip-8kdxpq-record\install-record.txt --single-version-externally-managed --install-headers C:\entorno\include\site\python2.7
    running install
    running build
    running build_py
    running build_ext
    building '_imaging' extension

    creating build\temp.win32-2.7
    creating build\temp.win32-2.7\Release
    creating build\temp.win32-2.7\Release\libimaging
    c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IlibImaging -IC:\entorno\include -IC:\Python27\include -IC:\entorno\PC -c _imaging.c -o build\temp.win32-2.7\Release\_imaging.o

    c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IlibImaging -IC:\entorno\include -IC:\Python27\include -IC:\entorno\PC -c decode.c -o build\temp.win32-2.7\Release\decode.o

    c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IlibImaging -IC:\entorno\include -IC:\Python27\include -IC:\entorno\PC -c encode.c -o build\temp.win32-2.7\Release\encode.o

    c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IlibImaging -IC:\entorno\include -IC:\Python27\include -IC:\entorno\PC -c map.c -o build\temp.win32-2.7\Release\map.o

    c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IlibImaging -IC:\entorno\include -IC:\Python27\include -IC:\entorno\PC -c display.c -o build\temp.win32-2.7\Release\display.o

    In file included from display.c:40:

    libImaging/ImDib.h:38: error: expected specifier-qualifier-list before 'UINT8'

    display.c: In function '_fromstring':

    display.c:186: error: 'struct ImagingDIBInstance' has no member named 'ysize'

    display.c:186: error: 'struct ImagingDIBInstance' has no member named 'linesize'

    display.c:191: error: 'struct ImagingDIBInstance' has no member named 'bits'

    display.c: In function '_tostring':

    display.c:204: error: 'struct ImagingDIBInstance' has no member named 'bits'

    display.c:204: error: 'struct ImagingDIBInstance' has no member named 'ysize'

    display.c:204: error: 'struct ImagingDIBInstance' has no member named 'linesize'

    display.c: In function '_getattr':

    display.c:230: error: 'struct ImagingDIBInstance' has no member named 'mode'

    display.c:232: error: 'struct ImagingDIBInstance' has no member named 'xsize'

    display.c:232: error: 'struct ImagingDIBInstance' has no member named 'ysize'

    display.c: In function 'PyImaging_DrawWmf':

    display.c:761: warning: pointer targets in passing argument 2 of 'SetWinMetaFileBits' differ in signedness

    display.c:767: warning: pointer targets in passing argument 2 of 'SetEnhMetaFileBits' differ in signedness

    display.c:793: warning: passing argument 4 of 'CreateDIBSection' from incompatible pointer type

    C:\Python27\Lib\distutils\dist.py:267: UserWarning: Unknown distribution option: 'use_2to3'

      warnings.warn(msg)

    error: command 'gcc' failed with exit status 1

    Complete output from command C:\entorno\Scripts\python.exe -c "import setuptools;__file__='C:\\entorno\\build\\pillow\\setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\docume~1\aaa\config~1\temp\pip-8kdxpq-record\install-record.txt --single-version-externally-managed --install-headers C:\entorno\include\site\python2.7:

    running install

running build

running build_py

running build_ext

building '_imaging' extension

creating build\temp.win32-2.7

creating build\temp.win32-2.7\Release

creating build\temp.win32-2.7\Release\libimaging

c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IlibImaging -IC:\entorno\include -IC:\Python27\include -IC:\entorno\PC -c _imaging.c -o build\temp.win32-2.7\Release\_imaging.o

c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IlibImaging -IC:\entorno\include -IC:\Python27\include -IC:\entorno\PC -c decode.c -o build\temp.win32-2.7\Release\decode.o

c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IlibImaging -IC:\entorno\include -IC:\Python27\include -IC:\entorno\PC -c encode.c -o build\temp.win32-2.7\Release\encode.o

c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IlibImaging -IC:\entorno\include -IC:\Python27\include -IC:\entorno\PC -c map.c -o build\temp.win32-2.7\Release\map.o

c:\mingw\bin\gcc.exe -mno-cygwin -mdll -O -Wall -IlibImaging -IC:\entorno\include -IC:\Python27\include -IC:\entorno\PC -c display.c -o build\temp.win32-2.7\Release\display.o

In file included from display.c:40:

libImaging/ImDib.h:38: error: expected specifier-qualifier-list before 'UINT8'

display.c: In function '_fromstring':

display.c:186: error: 'struct ImagingDIBInstance' has no member named 'ysize'

display.c:186: error: 'struct ImagingDIBInstance' has no member named 'linesize'

display.c:191: error: 'struct ImagingDIBInstance' has no member named 'bits'

display.c: In function '_tostring':

display.c:204: error: 'struct ImagingDIBInstance' has no member named 'bits'

display.c:204: error: 'struct ImagingDIBInstance' has no member named 'ysize'

display.c:204: error: 'struct ImagingDIBInstance' has no member named 'linesize'

display.c: In function '_getattr':

display.c:230: error: 'struct ImagingDIBInstance' has no member named 'mode'

display.c:232: error: 'struct ImagingDIBInstance' has no member named 'xsize'

display.c:232: error: 'struct ImagingDIBInstance' has no member named 'ysize'

display.c: In function 'PyImaging_DrawWmf':

display.c:761: warning: pointer targets in passing argument 2 of 'SetWinMetaFileBits' differ in signedness

display.c:767: warning: pointer targets in passing argument 2 of 'SetEnhMetaFileBits' differ in signedness

display.c:793: warning: passing argument 4 of 'CreateDIBSection' from incompatible pointer type

C:\Python27\Lib\distutils\dist.py:267: UserWarning: Unknown distribution option: 'use_2to3'

  warnings.warn(msg)

error: command 'gcc' failed with exit status 1

----------------------------------------

Command C:\entorno\Scripts\python.exe -c "import setuptools;__file__='C:\\entorno\\build\\pillow\\setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\docume~1\aaa\config~1\temp\pip-8kdxpq-record\install-record.txt --single-version-externally-managed --install-headers C:\entorno\include\site\python2.7 failed with error code 1 in C:\entorno\build\pillow

Exception information:
Traceback (most recent call last):
  File "C:\entorno\lib\site-packages\pip-1.2.1-py2.7.egg\pip\basecommand.py", line 107, in main
    status = self.run(options, args)
  File "C:\entorno\lib\site-packages\pip-1.2.1-py2.7.egg\pip\commands\install.py", line 261, in run
    requirement_set.install(install_options, global_options)
  File "C:\entorno\lib\site-packages\pip-1.2.1-py2.7.egg\pip\req.py", line 1166, in install
    requirement.install(install_options, global_options)
  File "C:\entorno\lib\site-packages\pip-1.2.1-py2.7.egg\pip\req.py", line 589, in install
    cwd=self.source_dir, filter_stdout=self._filter_install, show_stdout=False)
  File "C:\entorno\lib\site-packages\pip-1.2.1-py2.7.egg\pip\util.py", line 612, in call_subprocess
    % (command_desc, proc.returncode, cwd))
InstallationError: Command C:\entorno\Scripts\python.exe -c "import setuptools;__file__='C:\\entorno\\build\\pillow\\setup.py';exec(compile(open(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record c:\docume~1\aaa\config~1\temp\pip-8kdxpq-record\install-record.txt --single-version-externally-managed --install-headers C:\entorno\include\site\python2.7 failed with error code 1 in C:\entorno\build\pillow

它不是我唯一遇到问题的库,但我需要安装它。

谢谢!

PS:这是谷歌翻译,不好意思。

4

1 回答 1

0

当我尝试在 Windows 下安装 Pillow 时,我遇到了类似的 gcc 失败,原因显然是 setuptools 版本过时。

安装文档说

Python Wheel
注意:实验性的。需要 setuptools >=0.8 和 pip >=1.4.1
$ pip install --use-wheel Pillow

因此,我更新了 setuptools(确保我删除了旧版本),并且 pip install 开始完美运行。

于 2014-01-17T10:19:36.963 回答