无法构建 Pillow

无法构建 Pillow

我使用的是 Kubuntu 16.04。我尝试安装 TFLearn 库,但它需要 Pillow,我尝试安装它但失败了。单独安装 Pillow 也行不通。

daniel@beepboop:~$ pip install Pillow
Collecting Pillow
  Using cached Pillow-3.2.0.zip
Building wheels for collected packages: Pillow
  Running setup.py bdist_wheel for Pillow ... error
  Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-jRpryD/Pillow/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" bdist_wheel -d /tmp/tmp1OrE0Epip-wheel- --python-tag cp27:
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-2.7
  creating build/lib.linux-x86_64-2.7/PIL
  copying PIL/XVThumbImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PngImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/WebPImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/XbmImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageQt.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/TarIO.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageCms.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/SpiderImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/GbrImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/FpxImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/WmfImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PcfFontFile.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageColor.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/Jpeg2KImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/__init__.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/Hdf5StubImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/GimpGradientFile.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/MicImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PcxImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/IptcImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/IcoImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/features.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImagePalette.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PSDraw.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/_binary.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/JpegPresets.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/BmpImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImagePath.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/GdImageFile.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PpmImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageSequence.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/FliImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/BufrStubImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/_util.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PyAccess.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/OleFileIO.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PdfImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageWin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/Image.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/TgaImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageGrab.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/GimpPaletteFile.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/XpmImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/McIdasImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PaletteFile.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageFont.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PixarImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageFile.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/GifImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/DcxImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageTransform.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/GribStubImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/JpegImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/WalImageFile.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PsdImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/FontFile.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/MpegImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/TiffImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PcdImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/IcnsImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageEnhance.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageOps.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageTk.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/SgiImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ExifTags.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/MpoImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImtImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/EpsImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/DdsImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/PalmImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/SunImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ContainerIO.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/BdfFontFile.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageDraw2.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/FtexImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageShow.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageMorph.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/CurImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/MspImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageFilter.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageMath.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/TiffTags.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageDraw.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageStat.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageChops.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/ImageMode.py -> build/lib.linux-x86_64-2.7/PIL
  copying PIL/FitsStubImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
  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'
  warning: no files found matching '*.sh'
  no previously-included directories found matching 'docs/_static'
  warning: no previously-included files found matching '.coveragerc'
  warning: no previously-included files found matching '.editorconfig'
  warning: no previously-included files found matching '.landscape.yaml'
  warning: no previously-included files found matching 'appveyor.yml'
  warning: no previously-included files found matching 'build_children.sh'
  warning: no previously-included files found matching 'tox.ini'
  warning: no previously-included files matching '.git*' found anywhere in distribution
  warning: no previously-included files matching '*.pyc' found anywhere in distribution
  warning: no previously-included files matching '*.so' found anywhere in distribution
  writing manifest file 'Pillow.egg-info/SOURCES.txt'
  copying PIL/OleFileIO-README.md -> build/lib.linux-x86_64-2.7/PIL
  running build_ext
  Traceback (most recent call last):
    File "<string>", line 1, in <module>
    File "/tmp/pip-build-jRpryD/Pillow/setup.py", line 767, in <module>
      zip_safe=not debug_build(), )
    File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
      dist.run_commands()
    File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
      self.run_command(cmd)
    File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
      cmd_obj.run()
    File "/usr/lib/python2.7/dist-packages/wheel/bdist_wheel.py", line 179, in run
      self.run_command('build')
    File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command
      self.distribution.run_command(command)
    File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
      cmd_obj.run()
    File "/usr/lib/python2.7/distutils/command/build.py", line 128, in run
      self.run_command(cmd_name)
    File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command
      self.distribution.run_command(command)
    File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
      cmd_obj.run()
    File "/usr/lib/python2.7/distutils/command/build_ext.py", line 339, in run
      self.build_extensions()
    File "/tmp/pip-build-jRpryD/Pillow/setup.py", line 512, in build_extensions
      ' using --disable-%s, aborting' % (f, f))
  ValueError: jpeg is required unless explicitly disabled using --disable-jpeg, aborting

  ----------------------------------------
  Failed building wheel for Pillow
  Running setup.py clean for Pillow
Failed to build Pillow
Installing collected packages: Pillow
  Running setup.py install for Pillow ... error
    Complete output from command /usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-jRpryD/Pillow/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-4o357y-record/install-record.txt --single-version-externally-managed --compile --user --prefix=:
    running install
    running build
    running build_py
    creating build
    creating build/lib.linux-x86_64-2.7
    creating build/lib.linux-x86_64-2.7/PIL
    copying PIL/XVThumbImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PngImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/WebPImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/XbmImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageQt.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/TarIO.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageCms.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/SpiderImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/GbrImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/FpxImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/WmfImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PcfFontFile.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageColor.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/Jpeg2KImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/__init__.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/Hdf5StubImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/GimpGradientFile.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/MicImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PcxImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/IptcImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/IcoImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/features.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImagePalette.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PSDraw.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/_binary.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/JpegPresets.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/BmpImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImagePath.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/GdImageFile.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PpmImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageSequence.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/FliImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/BufrStubImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/_util.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PyAccess.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/OleFileIO.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PdfImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageWin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/Image.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/TgaImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageGrab.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/GimpPaletteFile.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/XpmImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/McIdasImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PaletteFile.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageFont.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PixarImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageFile.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/GifImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/DcxImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageTransform.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/GribStubImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/JpegImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/WalImageFile.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PsdImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/FontFile.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/MpegImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/TiffImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PcdImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/IcnsImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageEnhance.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageOps.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageTk.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/SgiImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ExifTags.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/MpoImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImtImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/EpsImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/DdsImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/PalmImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/SunImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ContainerIO.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/BdfFontFile.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageDraw2.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/FtexImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageShow.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageMorph.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/CurImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/MspImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageFilter.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageMath.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/TiffTags.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageDraw.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageStat.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageChops.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/ImageMode.py -> build/lib.linux-x86_64-2.7/PIL
    copying PIL/FitsStubImagePlugin.py -> build/lib.linux-x86_64-2.7/PIL
    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'
    warning: no files found matching '*.sh'
    no previously-included directories found matching 'docs/_static'
    warning: no previously-included files found matching '.coveragerc'
    warning: no previously-included files found matching '.editorconfig'
    warning: no previously-included files found matching '.landscape.yaml'
    warning: no previously-included files found matching 'appveyor.yml'
    warning: no previously-included files found matching 'build_children.sh'
    warning: no previously-included files found matching 'tox.ini'
    warning: no previously-included files matching '.git*' found anywhere in distribution
    warning: no previously-included files matching '*.pyc' found anywhere in distribution
    warning: no previously-included files matching '*.so' found anywhere in distribution
    writing manifest file 'Pillow.egg-info/SOURCES.txt'
    copying PIL/OleFileIO-README.md -> build/lib.linux-x86_64-2.7/PIL
    running build_ext
    Traceback (most recent call last):
      File "<string>", line 1, in <module>
      File "/tmp/pip-build-jRpryD/Pillow/setup.py", line 767, in <module>
        zip_safe=not debug_build(), )
      File "/usr/lib/python2.7/distutils/core.py", line 151, in setup
        dist.run_commands()
      File "/usr/lib/python2.7/distutils/dist.py", line 953, in run_commands
        self.run_command(cmd)
      File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
        cmd_obj.run()
      File "/usr/local/lib/python2.7/dist-packages/setuptools/command/install.py", line 61, in run
        return orig.install.run(self)
      File "/usr/lib/python2.7/distutils/command/install.py", line 601, in run
        self.run_command('build')
      File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
        cmd_obj.run()
      File "/usr/lib/python2.7/distutils/command/build.py", line 128, in run
        self.run_command(cmd_name)
      File "/usr/lib/python2.7/distutils/cmd.py", line 326, in run_command
        self.distribution.run_command(command)
      File "/usr/lib/python2.7/distutils/dist.py", line 972, in run_command
        cmd_obj.run()
      File "/usr/lib/python2.7/distutils/command/build_ext.py", line 339, in run
        self.build_extensions()
      File "/tmp/pip-build-jRpryD/Pillow/setup.py", line 512, in build_extensions
        ' using --disable-%s, aborting' % (f, f))
    ValueError: jpeg is required unless explicitly disabled using --disable-jpeg, aborting

    ----------------------------------------
Command "/usr/bin/python -u -c "import setuptools, tokenize;__file__='/tmp/pip-build-jRpryD/Pillow/setup.py';exec(compile(getattr(tokenize, 'open', open)(__file__).read().replace('\r\n', '\n'), __file__, 'exec'))" install --record /tmp/pip-4o357y-record/install-record.txt --single-version-externally-managed --compile --user --prefix=" failed with error code 1 in /tmp/pip-build-jRpryD/Pillow/
You are using pip version 8.1.1, however version 8.1.2 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
daniel@beepboop:~$ 

答案1

正如所提到的https://github.com/python-pillow/Pillow/issues/1457#issuecomment-203583883sudo apt install libjpeg-dev zlib1g-dev安装 Pillow 所需的依赖项。

相关内容