Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Building wheel for pillow (pyproject.toml) did not run successfully. #3085

Open
cgcrossfire opened this issue Dec 12, 2024 · 1 comment
Open

Comments

@cgcrossfire
Copy link

System failed on install on last step. I tried multiple times with the arm and bookworm steps. I'm installing on an RPI 5 with Rpi OS Lite 32-bit. I tried installing piwheel as well, but get the same error with pillow.

I get this message when installing pre motioneye

Building wheel for pillow (pyproject.toml) ... error
error: subprocess-exited-with-error

× Building wheel for pillow (pyproject.toml) did not run successfully.
│ exit code: 1
╰─> [217 lines of output]
running bdist_wheel
running build
running build_py
creating build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/IcoImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageShow.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PSDraw.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageMorph.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/TiffTags.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_binary.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/WmfImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PcxImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageDraw2.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/TiffImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PdfParser.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/GbrImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PpmImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/GribStubImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PcfFontFile.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/FontFile.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageCms.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/FpxImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/Hdf5StubImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/SgiImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/WebPImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PngImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/IcnsImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_typing.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ExifTags.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/XpmImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/SunImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImagePalette.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageWin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageGrab.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/JpegImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageDraw.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/GimpPaletteFile.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/IptcImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/FitsImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/QoiImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageFile.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageEnhance.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_version.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/XbmImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/DcxImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/MpegImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PdfImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PcdImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageStat.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/GimpGradientFile.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImtImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/FtexImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageFilter.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageColor.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageTk.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PalmImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/GdImageFile.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/WalImageFile.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/XVThumbImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/TarIO.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageFont.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_util.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageMath.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/BmpImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageTransform.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ContainerIO.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_tkinter_finder.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/MspImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/features.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/BdfFontFile.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/Jpeg2KImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageMode.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/CurImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/McIdasImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PsdImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/init.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/main.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PaletteFile.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/BufrStubImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/Image.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/SpiderImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImagePath.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/MicImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageSequence.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_deprecate.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/PixarImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/FliImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageOps.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/GifImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/report.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/BlpImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/MpoImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageQt.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/JpegPresets.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/TgaImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/DdsImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/ImageChops.py -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/EpsImagePlugin.py -> build/lib.linux-aarch64-cpython-311/PIL
running egg_info
writing src/pillow.egg-info/PKG-INFO
writing dependency_links to src/pillow.egg-info/dependency_links.txt
writing requirements to src/pillow.egg-info/requires.txt
writing top-level names to src/pillow.egg-info/top_level.txt
reading manifest file 'src/pillow.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
warning: no files found matching '.c'
warning: no files found matching '
.h'
warning: no files found matching '.sh'
warning: no files found matching '
.txt'
warning: no files found matching '.flake8'
warning: no previously-included files found matching '.appveyor.yml'
warning: no previously-included files found matching '.clang-format'
warning: no previously-included files found matching '.coveragerc'
warning: no previously-included files found matching '.editorconfig'
warning: no previously-included files found matching '.readthedocs.yml'
warning: no previously-included files found matching 'codecov.yml'
warning: no previously-included files found matching 'renovate.json'
warning: no previously-included files matching '.git*' found anywhere in distribution
warning: no previously-included files matching '*.so' found anywhere in distribution
no previously-included directories found matching '.ci'
no previously-included directories found matching 'wheels'
adding license file 'LICENSE'
writing manifest file 'src/pillow.egg-info/SOURCES.txt'
copying src/PIL/_imaging.pyi -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_imagingcms.pyi -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_imagingft.pyi -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_imagingmath.pyi -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_imagingmorph.pyi -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_imagingtk.pyi -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/_webp.pyi -> build/lib.linux-aarch64-cpython-311/PIL
copying src/PIL/py.typed -> build/lib.linux-aarch64-cpython-311/PIL
running build_ext

  The headers or library files could not be found for jpeg,
  a required dependency when compiling Pillow from source.

  Please see the install instructions at:
     https://pillow.readthedocs.io/en/latest/installation/basic-installation.html

  Traceback (most recent call last):
    File "<string>", line 1026, in <module>
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/__init__.py", line 117, in setup
      return distutils.core.setup(**attrs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/core.py", line 183, in setup
      return run_commands(dist)
             ^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/core.py", line 199, in run_commands
      dist.run_commands()
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 954, in run_commands
      self.run_command(cmd)
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py", line 995, in run_command
      super().run_command(command)
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 973, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/command/bdist_wheel.py", line 381, in run
      self.run_command("build")
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/cmd.py", line 316, in run_command
      self.distribution.run_command(command)
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py", line 995, in run_command
      super().run_command(command)
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 973, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/cmd.py", line 316, in run_command
      self.distribution.run_command(command)
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/dist.py", line 995, in run_command
      super().run_command(command)
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/dist.py", line 973, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/command/build_ext.py", line 99, in run
      _build_ext.run(self)
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/_distutils/command/build_ext.py", line 359, in run
      self.build_extensions()
    File "<string>", line 845, in build_extensions
  RequiredDependencyException: jpeg

  During handling of the above exception, another exception occurred:

  Traceback (most recent call last):
    File "/usr/local/lib/python3.11/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
      main()
    File "/usr/local/lib/python3.11/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/usr/local/lib/python3.11/dist-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 251, in build_wheel
      return _build_backend().build_wheel(wheel_directory, config_settings,
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-install-uaa8eaxp/pillow_f52dca9db5c544be87f4d3699a09a4d5/_custom_build/backend.py", line 26, in build_wheel
      return super().build_wheel(wheel_directory, config_settings, metadata_directory)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/build_meta.py", line 438, in build_wheel
      return _build(['bdist_wheel', '--dist-info-dir', str(metadata_directory)])
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/build_meta.py", line 426, in _build
      return self._build_with_temp_dir(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/build_meta.py", line 407, in _build_with_temp_dir
      self.run_setup()
    File "/tmp/pip-install-uaa8eaxp/pillow_f52dca9db5c544be87f4d3699a09a4d5/_custom_build/backend.py", line 20, in run_setup
      return super().run_setup(setup_script)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-e_yyirx_/overlay/local/lib/python3.11/dist-packages/setuptools/build_meta.py", line 320, in run_setup
      exec(code, locals())
    File "<string>", line 1042, in <module>
  RequiredDependencyException:

  The headers or library files could not be found for jpeg,
  a required dependency when compiling Pillow from source.

  Please see the install instructions at:
     https://pillow.readthedocs.io/en/latest/installation/basic-installation.html


  [end of output]

note: This error originates from a subprocess, and is likely not a problem with pip.
ERROR: Failed building wheel for pillow
Building wheel for MarkupSafe (pyproject.toml) ... done
Created wheel for MarkupSafe: filename=MarkupSafe-3.0.2-cp311-cp311-linux_armv7l.whl size=21864 sha256=669d850788ccc41ec0631705f883f26e14fe01609cf4d0bf51927e6689c038f8
Stored in directory: /root/.cache/pip/wheels/9d/38/99/1f61f3b0dd7ab4898edfa9fcf6feb13644d4d49a44b3bed19d
Successfully built MarkupSafe
Failed to build pillow
ERROR: ERROR: Failed to build installable wheels for some pyproject.toml based projects (pillow)

@MichaIng
Copy link
Member

MichaIng commented Dec 14, 2024

Easiest ia to use the pre-compiled wheels from piwheels.org:

grep -q '\[global\]' /etc/pip.conf 2> /dev/null || printf '%b' '[global]\n' | sudo tee -a /etc/pip.conf > /dev/null
sudo sed -i '/^\[global\]/a\extra-index-url=https://www.piwheels.org/simple/' /etc/pip.conf

Oh I see the latest build failed there: piwheels/packages#482
Try to install one version older instead:

sudo pip3 install pillow==10.4.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants