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

Could not build wheels for Pillow #252

Open
prowlett opened this issue Sep 3, 2024 · 1 comment
Open

Could not build wheels for Pillow #252

prowlett opened this issue Sep 3, 2024 · 1 comment

Comments

@prowlett
Copy link

prowlett commented Sep 3, 2024

I'm trying to install the command line chirun on Ubuntu 24.04.01. I already have python3 python3-virtualenv and texlive. I installed pdf2svg poppler-utils libyaml-dev pdftk-java. I set up and activated a virtualenv environment then ran pip install git+https://github.com/chirun-ncl/chirun.git.

It ran for a bit then stopped saying it "Could not build wheels for Pillow". I can't work out if I am missing a dependency or something. What do I do? Thanks!

Here's the full output from where it reported the error:

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
╰─> [201 lines of output]
  running bdist_wheel
  running build
  running build_py
  creating build
  creating build/lib.linux-x86_64-cpython-312
  creating build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/_util.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/EpsImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PixarImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/McIdasImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageWin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/DcxImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/_tkinter_finder.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/BdfFontFile.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/GdImageFile.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageFilter.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PcdImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageMode.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/GbrImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/Hdf5StubImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageSequence.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageStat.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/_binary.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ExifTags.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/SunImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/WmfImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PdfImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/MicImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/GifImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/MpegImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageGrab.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/FitsImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/IcnsImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/Jpeg2KImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/BmpImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/GimpGradientFile.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageFont.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageDraw2.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/BlpImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageFile.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/FliImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageChops.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageTransform.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/WalImageFile.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/FtexImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/GribStubImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/features.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/GimpPaletteFile.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/CurImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PngImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/IcoImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/Image.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageEnhance.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/__init__.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PsdImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/_version.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/_deprecate.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/FontFile.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImagePalette.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/__main__.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PalmImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/XVThumbImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/WebPImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PpmImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/TiffImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageDraw.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageQt.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PdfParser.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/DdsImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/FpxImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/XbmImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/FitsStubImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/XpmImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/BufrStubImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageTk.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageColor.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/TgaImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PaletteFile.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/JpegPresets.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ContainerIO.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PcfFontFile.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageMath.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PSDraw.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageShow.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImagePath.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageMorph.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/MspImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/SgiImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PyAccess.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageOps.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImtImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/PcxImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/TiffTags.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/IptcImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/JpegImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/MpoImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/SpiderImagePlugin.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/TarIO.py -> build/lib.linux-x86_64-cpython-312/PIL
  copying src/PIL/ImageCms.py -> build/lib.linux-x86_64-cpython-312/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 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 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
  no previously-included directories found matching '.ci'
  adding license file 'LICENSE'
  writing manifest file 'src/Pillow.egg-info/SOURCES.txt'
  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.html
  
  Traceback (most recent call last):
    File "<string>", line 995, in <module>
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/__init__.py", line 117, in setup
      return distutils.core.setup(**attrs)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/_distutils/core.py", line 184, in setup
      return run_commands(dist)
             ^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/_distutils/core.py", line 200, in run_commands
      dist.run_commands()
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 954, in run_commands
      self.run_command(cmd)
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/dist.py", line 950, in run_command
      super().run_command(command)
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 973, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/command/bdist_wheel.py", line 384, in run
      self.run_command("build")
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command
      self.distribution.run_command(command)
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/dist.py", line 950, in run_command
      super().run_command(command)
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 973, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build.py", line 135, in run
      self.run_command(cmd_name)
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/_distutils/cmd.py", line 316, in run_command
      self.distribution.run_command(command)
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/dist.py", line 950, in run_command
      super().run_command(command)
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/_distutils/dist.py", line 973, in run_command
      cmd_obj.run()
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/command/build_ext.py", line 98, in run
      _build_ext.run(self)
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py", line 359, in run
      self.build_extensions()
    File "<string>", line 810, in build_extensions
  RequiredDependencyException: jpeg
  
  During handling of the above exception, another exception occurred:
  
  Traceback (most recent call last):
    File ".../chirun_env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 353, in <module>
      main()
    File ".../chirun_env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 335, in main
      json_out['return_val'] = hook(**hook_input['kwargs'])
                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    File ".../chirun_env/lib/python3.12/site-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-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 421, in build_wheel
      return self._build_with_temp_dir(
             ^^^^^^^^^^^^^^^^^^^^^^^^^^
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 403, in _build_with_temp_dir
      self.run_setup()
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 503, in run_setup
      super().run_setup(setup_script=setup_script)
    File "/tmp/pip-build-env-zz8gnn0z/overlay/lib/python3.12/site-packages/setuptools/build_meta.py", line 318, in run_setup
      exec(code, locals())
    File "<string>", line 1015, 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.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 pyoembed (pyproject.toml) ... done
Created wheel for pyoembed: filename=pyoembed-0.1.2-py3-none-any.whl size=19442 sha256=4154bfa762d9ae27b2f12b14b4f5c6db971fce5aaa55875c2902364e16e6e996
Stored in directory: .../.cache/pip/wheels/b5/34/db/717d24d0a641adad5d9e7e150b2a32eba5b9c3a3ddd6f3659b
Building wheel for plasTeX (pyproject.toml) ... done
Created wheel for plasTeX: filename=plasTeX-3.1-py3-none-any.whl size=726844 sha256=9f87476ab968a73d9c7b2464be506b556bb48825588a7c5a6a66010012893e05
Stored in directory: /tmp/pip-ephem-wheel-cache-qwhheus5/wheels/39/07/4f/ea59f69f3d14b798b7c391bf910a722b9d90bcb954f7316933
Building wheel for websockets (pyproject.toml) ... done
Created wheel for websockets: filename=websockets-10.4-cp312-cp312-linux_x86_64.whl size=106746 sha256=3a4998ca35f3eeb9b1ba04c2f27b4deaea03926eb4a2b972de4006aef8a9e92a
Stored in directory: .../.cache/pip/wheels/80/cf/6d/5d7e4c920cb41925a178b2d2621889c520d648bab487b1d7fd
Building wheel for pandoc-attributes (pyproject.toml) ... done
Created wheel for pandoc-attributes: filename=pandoc_attributes-0.1.7-py3-none-any.whl size=3006 sha256=6292477d7ffae9e286fc4f18c16d88c26fef0822a23e5249a0b1cd41c994ad88
Stored in directory: .../.cache/pip/wheels/14/94/de/e6f21befc2b9ac5d743aae8d209ccf2ca812fb2aadda7dc8d9
Successfully built chirun MarkupSafe pyoembed plasTeX websockets pandoc-attributes
Failed to build Pillow
ERROR: Could not build wheels for Pillow, which is required to install pyproject.toml-based projects
@prowlett
Copy link
Author

prowlett commented Sep 3, 2024

On reflection, and on the basis of the message in that error output "The headers or library files could not be found for jpeg, a required dependency when compiling Pillow from source" and the list of dependencies here, I installed libjpeg8-dev using apt and then tried again, and this time I have chirun installed and working. So either you have a new dependency libjpeg8-dev which needs adding to the installation instructions, or I have misunderstood something or done something wrong and require further instruction. Thanks!

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

No branches or pull requests

1 participant