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 from source on Windows #8603

Open
Ganeshkumhar1 opened this issue Dec 16, 2024 · 10 comments
Open

Building from source on Windows #8603

Ganeshkumhar1 opened this issue Dec 16, 2024 · 10 comments

Comments

@Ganeshkumhar1
Copy link

Ganeshkumhar1 commented Dec 16, 2024

trying to build pillow using instructions given here -
https://github.com/python-pillow/Pillow/blob/main/.appveyor.yml

seems libjpeg-turbo-3.0.3.tar.gz is not present on given location. (ran winbuild\build_prepare.py )

Fetching https://raw.githubusercontent.com/python-pillow/pillow-depends/main/libjpeg-turbo-3.0.3.tar.gz (attempt 1)...
Fetching https://raw.githubusercontent.com/python-pillow/pillow-depends/main/libjpeg-turbo-3.0.3.tar.gz (attempt 2)...
Fetching https://raw.githubusercontent.com/python-pillow/pillow-depends/main/libjpeg-turbo-3.0.3.tar.gz (attempt 3)...
HTTP Error 404: Not Found

Please check

@radarhere radarhere changed the title piloow build form source on windows pillow build form source on windows Dec 16, 2024
@radarhere radarhere changed the title pillow build form source on windows Building from source on Windows Dec 16, 2024
@radarhere
Copy link
Member

Hi. I've restored the file, so it should work if you try again.

I gather you're building Pillow 10.4.0 or earlier. Is there any particular reason you're not building the latest version of Pillow?

@Ganeshkumhar1
Copy link
Author

Ganeshkumhar1 commented Dec 16, 2024

Thank you @radarhere for restoring the files. I was able to build it. Yes, I am trying to build 10.4.0. Building this because same version I built on Linux for matplotlib, and want to keep versions same on both platform.

After installation I am seeing this error -

[C:\Temp\4119530650\python\Pillow]python selftest.py --installed
Traceback (most recent call last):
  File "C:\Temp\4119530650\python\Pillow\selftest.py", line 7, in <module>
    from PIL import Image, features
  File "C:\temp\4119530650\python\Lib\site-packages\PIL\Image.py", line 100, in <module>
    from . import _imaging as core
ImportError: DLL load failed while importing _imaging: The specified module could not be found.

@radarhere
Copy link
Member

Could you uninstall Pillow,
make sure that it is uninstalled by checking that you receive a ModuleNotFoundError when you try to import it in Python,
and then try to install it again and copy and paste your full install output here?

@Ganeshkumhar1
Copy link
Author

Ganeshkumhar1 commented Dec 16, 2024

I retried all the steps. attaching the logs .
build.log

"running python -m pip install -v -C raqm=vendor -C fribidi=vendor ."
Using pip 24.3.1 from C:\temp\4119530650\python\Lib\site-packages\pip (python 3.12)
Processing c:\temp\4119530650\python\pillow
  Installing build dependencies: started
  Running command pip subprocess to install build dependencies
  Using pip 24.3.1 from C:\Temp\4119530650\python\lib\site-packages\pip (python 3.12)
  Collecting setuptools>=67.8
    Obtaining dependency information for setuptools>=67.8 from https://files.pythonhosted.org/packages/55/21/47d163f615df1d30c094f6c8bbb353619274edccf0327b185cc2493c2c33/setuptools-75.6.0-py3-none-any.whl.metadata
    Using cached setuptools-75.6.0-py3-none-any.whl.metadata (6.7 kB)
  Using cached setuptools-75.6.0-py3-none-any.whl (1.2 MB)
  Installing collected packages: setuptools
  Successfully installed setuptools-75.6.0
  Installing build dependencies: finished with status 'done'
  Getting requirements to build wheel: started
  Running command Getting requirements to build wheel
  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 '*.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'
  Getting requirements to build wheel: finished with status 'done'
  Preparing metadata (pyproject.toml): started
  Running command Preparing metadata (pyproject.toml)
  running dist_info
  creating C:\Users\\AppData\Local\Temp\1\pip-modern-metadata-4vzrat51\pillow.egg-info
  writing C:\Users\\AppData\Local\Temp\1\pip-modern-metadata-4vzrat51\pillow.egg-info\PKG-INFO
  writing dependency_links to C:\Users\\AppData\Local\Temp\1\pip-modern-metadata-4vzrat51\pillow.egg-info\dependency_links.txt
  writing requirements to C:\Users\\AppData\Local\Temp\1\pip-modern-metadata-4vzrat51\pillow.egg-info\requires.txt
  writing top-level names to C:\Users\\AppData\Local\Temp\1\pip-modern-metadata-4vzrat51\pillow.egg-info\top_level.txt
  writing manifest file 'C:\Users\\AppData\Local\Temp\1\pip-modern-metadata-4vzrat51\pillow.egg-info\SOURCES.txt'
  reading manifest file 'C:\Users\\AppData\Local\Temp\1\pip-modern-metadata-4vzrat51\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 '*.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 'C:\Users\\AppData\Local\Temp\1\pip-modern-metadata-4vzrat51\pillow.egg-info\SOURCES.txt'
  creating 'C:\Users\\AppData\Local\Temp\1\pip-modern-metadata-4vzrat51\pillow-10.4.0.dist-info'
  Preparing metadata (pyproject.toml): finished with status 'done'
Building wheels for collected packages: pillow
  Building wheel for pillow (pyproject.toml): started
  Running command Building wheel for pillow (pyproject.toml)
  running bdist_wheel
  running build
  running build_py
  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 '*.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'
  running build_ext
  --------------------------------------------------------------------
  PIL SETUP SUMMARY
  --------------------------------------------------------------------
  version      Pillow 10.4.0
  platform     win32 3.12.6 (main, Sep 18 2024, 01:46:11)
               [MSC v.1938 64 bit (AMD64)]
  --------------------------------------------------------------------
  --- JPEG support available
  --- OPENJPEG (JPEG2000) support available (2.5.2)
  --- ZLIB (PNG/ZIP) support available
  --- LIBIMAGEQUANT support available
  --- LIBTIFF support available
  --- FREETYPE2 support available
  --- RAQM (Text shaping) support available (bundled, FriBiDi shim)
  --- LITTLECMS2 support available
  --- WEBP support available
  --- WEBPMUX support available
  *** XCB (X protocol) support not available
  --------------------------------------------------------------------
  To add a missing option, make sure you have the required
  library and headers.
  See https://pillow.readthedocs.io/en/latest/installation.html#building-from-source

  To check the build, run the selftest.py script.

  installing to build\bdist.win-amd64\wheel
  running install
  running install_lib
  creating build\bdist.win-amd64\wheel
  creating build\bdist.win-amd64\wheel\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._BdfFontFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._BlpImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._BmpImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._BufrStubImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ContainerIO.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._CurImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._DcxImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._DdsImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._EpsImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ExifTags.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._features.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._FitsImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._FliImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._FontFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._FpxImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._FtexImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._GbrImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._GdImageFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._GifImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._GimpGradientFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._GimpPaletteFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._GribStubImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._Hdf5StubImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._IcnsImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._IcoImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._Image.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageChops.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageCms.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageColor.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageDraw.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageDraw2.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageEnhance.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageFilter.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageFont.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageGrab.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageMath.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageMode.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageMorph.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageOps.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImagePalette.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImagePath.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageQt.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageSequence.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageShow.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageStat.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageTk.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageTransform.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImageWin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._ImtImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._IptcImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._Jpeg2KImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._JpegImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._JpegPresets.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._McIdasImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._MicImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._MpegImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._MpoImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._MspImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PaletteFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PalmImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PcdImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PcfFontFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PcxImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PdfImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PdfParser.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PixarImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PngImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PpmImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PsdImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PSDraw.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._py.typed -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._PyAccess.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._QoiImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._report.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._SgiImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._SpiderImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._SunImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._TarIO.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._TgaImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._TiffImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._TiffTags.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._WalImageFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._WebPImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._WmfImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._XbmImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._XpmImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\._XVThumbImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__binary.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__deprecate.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__imaging.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__imagingcms.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__imagingft.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__imagingmath.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__imagingmorph.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__tkinter_finder.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__typing.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__util.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__version.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.__webp.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.___init__.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\.___main__.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\BdfFontFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\BlpImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\BmpImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\BufrStubImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ContainerIO.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\CurImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\DcxImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\DdsImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\EpsImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ExifTags.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\features.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\FitsImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\FliImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\FontFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\FpxImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\FtexImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\GbrImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\GdImageFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\GifImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\GimpGradientFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\GimpPaletteFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\GribStubImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\Hdf5StubImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\IcnsImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\IcoImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\Image.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageChops.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageCms.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageColor.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageDraw.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageDraw2.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageEnhance.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageFilter.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageFont.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageGrab.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageMath.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageMode.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageMorph.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageOps.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImagePalette.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImagePath.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageQt.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageSequence.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageShow.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageStat.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageTk.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageTransform.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImageWin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\ImtImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\IptcImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\Jpeg2KImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\JpegImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\JpegPresets.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\McIdasImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\MicImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\MpegImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\MpoImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\MspImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PaletteFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PalmImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PcdImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PcfFontFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PcxImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PdfImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PdfParser.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PixarImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PngImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PpmImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PsdImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PSDraw.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\py.typed -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\PyAccess.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\QoiImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\report.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\SgiImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\SpiderImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\SunImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\TarIO.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\TgaImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\TiffImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\TiffTags.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\WalImageFile.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\WebPImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\WmfImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\XbmImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\XpmImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\XVThumbImagePlugin.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_binary.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_deprecate.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_imaging.cp312-win_amd64.pyd -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_imaging.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_imagingcms.cp312-win_amd64.pyd -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_imagingcms.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_imagingft.cp312-win_amd64.pyd -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_imagingft.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_imagingmath.cp312-win_amd64.pyd -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_imagingmath.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_imagingmorph.cp312-win_amd64.pyd -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_imagingmorph.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_imagingtk.cp312-win_amd64.pyd -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_tkinter_finder.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_typing.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_util.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_version.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_webp.cp312-win_amd64.pyd -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\_webp.pyi -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\__init__.py -> build\bdist.win-amd64\wheel\.\PIL
  copying build\lib.win-amd64-cpython-312\PIL\__main__.py -> build\bdist.win-amd64\wheel\.\PIL
  running install_egg_info
  Copying src\pillow.egg-info to build\bdist.win-amd64\wheel\.\pillow-10.4.0-py3.12.egg-info
  running install_scripts
  C:\Users\\AppData\Local\Temp\1\pip-build-env-8qn6tsz_\overlay\Lib\site-packages\setuptools\command\bdist_wheel.py:108: RuntimeWarning: Config variable 'Py_DEBUG' is unset, Python ABI tag may be incorrect
    if get_flag("Py_DEBUG", hasattr(sys, "gettotalrefcount"), warn=(impl == "cp")):
  creating build\bdist.win-amd64\wheel\pillow-10.4.0.dist-info\WHEEL
  creating 'C:\Users\\AppData\Local\Temp\1\pip-wheel-5cqmpvuo\.tmp-fnvcwz3z\pillow-10.4.0-cp312-cp312-win_amd64.whl' and adding 'build\bdist.win-amd64\wheel' to it
  adding 'PIL/._BdfFontFile.py'
  adding 'PIL/._BlpImagePlugin.py'
  adding 'PIL/._BmpImagePlugin.py'
  adding 'PIL/._BufrStubImagePlugin.py'
  adding 'PIL/._ContainerIO.py'
  adding 'PIL/._CurImagePlugin.py'
  adding 'PIL/._DcxImagePlugin.py'
  adding 'PIL/._DdsImagePlugin.py'
  adding 'PIL/._EpsImagePlugin.py'
  adding 'PIL/._ExifTags.py'
  adding 'PIL/._FitsImagePlugin.py'
  adding 'PIL/._FliImagePlugin.py'
  adding 'PIL/._FontFile.py'
  adding 'PIL/._FpxImagePlugin.py'
  adding 'PIL/._FtexImagePlugin.py'
  adding 'PIL/._GbrImagePlugin.py'
  adding 'PIL/._GdImageFile.py'
  adding 'PIL/._GifImagePlugin.py'
  adding 'PIL/._GimpGradientFile.py'
  adding 'PIL/._GimpPaletteFile.py'
  adding 'PIL/._GribStubImagePlugin.py'
  adding 'PIL/._Hdf5StubImagePlugin.py'
  adding 'PIL/._IcnsImagePlugin.py'
  adding 'PIL/._IcoImagePlugin.py'
  adding 'PIL/._ImImagePlugin.py'
  adding 'PIL/._Image.py'
  adding 'PIL/._ImageChops.py'
  adding 'PIL/._ImageCms.py'
  adding 'PIL/._ImageColor.py'
  adding 'PIL/._ImageDraw.py'
  adding 'PIL/._ImageDraw2.py'
  adding 'PIL/._ImageEnhance.py'
  adding 'PIL/._ImageFile.py'
  adding 'PIL/._ImageFilter.py'
  adding 'PIL/._ImageFont.py'
  adding 'PIL/._ImageGrab.py'
  adding 'PIL/._ImageMath.py'
  adding 'PIL/._ImageMode.py'
  adding 'PIL/._ImageMorph.py'
  adding 'PIL/._ImageOps.py'
  adding 'PIL/._ImagePalette.py'
  adding 'PIL/._ImagePath.py'
  adding 'PIL/._ImageQt.py'
  adding 'PIL/._ImageSequence.py'
  adding 'PIL/._ImageShow.py'
  adding 'PIL/._ImageStat.py'
  adding 'PIL/._ImageTk.py'
  adding 'PIL/._ImageTransform.py'
  adding 'PIL/._ImageWin.py'
  adding 'PIL/._ImtImagePlugin.py'
  adding 'PIL/._IptcImagePlugin.py'
  adding 'PIL/._Jpeg2KImagePlugin.py'
  adding 'PIL/._JpegImagePlugin.py'
  adding 'PIL/._JpegPresets.py'
  adding 'PIL/._McIdasImagePlugin.py'
  adding 'PIL/._MicImagePlugin.py'
  adding 'PIL/._MpegImagePlugin.py'
  adding 'PIL/._MpoImagePlugin.py'
  adding 'PIL/._MspImagePlugin.py'
  adding 'PIL/._PSDraw.py'
  adding 'PIL/._PaletteFile.py'
  adding 'PIL/._PalmImagePlugin.py'
  adding 'PIL/._PcdImagePlugin.py'
  adding 'PIL/._PcfFontFile.py'
  adding 'PIL/._PcxImagePlugin.py'
  adding 'PIL/._PdfImagePlugin.py'
  adding 'PIL/._PdfParser.py'
  adding 'PIL/._PixarImagePlugin.py'
  adding 'PIL/._PngImagePlugin.py'
  adding 'PIL/._PpmImagePlugin.py'
  adding 'PIL/._PsdImagePlugin.py'
  adding 'PIL/._PyAccess.py'
  adding 'PIL/._QoiImagePlugin.py'
  adding 'PIL/._SgiImagePlugin.py'
  adding 'PIL/._SpiderImagePlugin.py'
  adding 'PIL/._SunImagePlugin.py'
  adding 'PIL/._TarIO.py'
  adding 'PIL/._TgaImagePlugin.py'
  adding 'PIL/._TiffImagePlugin.py'
  adding 'PIL/._TiffTags.py'
  adding 'PIL/._WalImageFile.py'
  adding 'PIL/._WebPImagePlugin.py'
  adding 'PIL/._WmfImagePlugin.py'
  adding 'PIL/._XVThumbImagePlugin.py'
  adding 'PIL/._XbmImagePlugin.py'
  adding 'PIL/._XpmImagePlugin.py'
  adding 'PIL/.___init__.py'
  adding 'PIL/.___main__.py'
  adding 'PIL/.__binary.py'
  adding 'PIL/.__deprecate.py'
  adding 'PIL/.__imaging.pyi'
  adding 'PIL/.__imagingcms.pyi'
  adding 'PIL/.__imagingft.pyi'
  adding 'PIL/.__imagingmath.pyi'
  adding 'PIL/.__imagingmorph.pyi'
  adding 'PIL/.__tkinter_finder.py'
  adding 'PIL/.__typing.py'
  adding 'PIL/.__util.py'
  adding 'PIL/.__version.py'
  adding 'PIL/.__webp.pyi'
  adding 'PIL/._features.py'
  adding 'PIL/._py.typed'
  adding 'PIL/._report.py'
  adding 'PIL/BdfFontFile.py'
  adding 'PIL/BlpImagePlugin.py'
  adding 'PIL/BmpImagePlugin.py'
  adding 'PIL/BufrStubImagePlugin.py'
  adding 'PIL/ContainerIO.py'
  adding 'PIL/CurImagePlugin.py'
  adding 'PIL/DcxImagePlugin.py'
  adding 'PIL/DdsImagePlugin.py'
  adding 'PIL/EpsImagePlugin.py'
  adding 'PIL/ExifTags.py'
  adding 'PIL/FitsImagePlugin.py'
  adding 'PIL/FliImagePlugin.py'
  adding 'PIL/FontFile.py'
  adding 'PIL/FpxImagePlugin.py'
  adding 'PIL/FtexImagePlugin.py'
  adding 'PIL/GbrImagePlugin.py'
  adding 'PIL/GdImageFile.py'
  adding 'PIL/GifImagePlugin.py'
  adding 'PIL/GimpGradientFile.py'
  adding 'PIL/GimpPaletteFile.py'
  adding 'PIL/GribStubImagePlugin.py'
  adding 'PIL/Hdf5StubImagePlugin.py'
  adding 'PIL/IcnsImagePlugin.py'
  adding 'PIL/IcoImagePlugin.py'
  adding 'PIL/ImImagePlugin.py'
  adding 'PIL/Image.py'
  adding 'PIL/ImageChops.py'
  adding 'PIL/ImageCms.py'
  adding 'PIL/ImageColor.py'
  adding 'PIL/ImageDraw.py'
  adding 'PIL/ImageDraw2.py'
  adding 'PIL/ImageEnhance.py'
  adding 'PIL/ImageFile.py'
  adding 'PIL/ImageFilter.py'
  adding 'PIL/ImageFont.py'
  adding 'PIL/ImageGrab.py'
  adding 'PIL/ImageMath.py'
  adding 'PIL/ImageMode.py'
  adding 'PIL/ImageMorph.py'
  adding 'PIL/ImageOps.py'
  adding 'PIL/ImagePalette.py'
  adding 'PIL/ImagePath.py'
  adding 'PIL/ImageQt.py'
  adding 'PIL/ImageSequence.py'
  adding 'PIL/ImageShow.py'
  adding 'PIL/ImageStat.py'
  adding 'PIL/ImageTk.py'
  adding 'PIL/ImageTransform.py'
  adding 'PIL/ImageWin.py'
  adding 'PIL/ImtImagePlugin.py'
  adding 'PIL/IptcImagePlugin.py'
  adding 'PIL/Jpeg2KImagePlugin.py'
  adding 'PIL/JpegImagePlugin.py'
  adding 'PIL/JpegPresets.py'
  adding 'PIL/McIdasImagePlugin.py'
  adding 'PIL/MicImagePlugin.py'
  adding 'PIL/MpegImagePlugin.py'
  adding 'PIL/MpoImagePlugin.py'
  adding 'PIL/MspImagePlugin.py'
  adding 'PIL/PSDraw.py'
  adding 'PIL/PaletteFile.py'
  adding 'PIL/PalmImagePlugin.py'
  adding 'PIL/PcdImagePlugin.py'
  adding 'PIL/PcfFontFile.py'
  adding 'PIL/PcxImagePlugin.py'
  adding 'PIL/PdfImagePlugin.py'
  adding 'PIL/PdfParser.py'
  adding 'PIL/PixarImagePlugin.py'
  adding 'PIL/PngImagePlugin.py'
  adding 'PIL/PpmImagePlugin.py'
  adding 'PIL/PsdImagePlugin.py'
  adding 'PIL/PyAccess.py'
  adding 'PIL/QoiImagePlugin.py'
  adding 'PIL/SgiImagePlugin.py'
  adding 'PIL/SpiderImagePlugin.py'
  adding 'PIL/SunImagePlugin.py'
  adding 'PIL/TarIO.py'
  adding 'PIL/TgaImagePlugin.py'
  adding 'PIL/TiffImagePlugin.py'
  adding 'PIL/TiffTags.py'
  adding 'PIL/WalImageFile.py'
  adding 'PIL/WebPImagePlugin.py'
  adding 'PIL/WmfImagePlugin.py'
  adding 'PIL/XVThumbImagePlugin.py'
  adding 'PIL/XbmImagePlugin.py'
  adding 'PIL/XpmImagePlugin.py'
  adding 'PIL/__init__.py'
  adding 'PIL/__main__.py'
  adding 'PIL/_binary.py'
  adding 'PIL/_deprecate.py'
  adding 'PIL/_imaging.cp312-win_amd64.pyd'
  adding 'PIL/_imaging.pyi'
  adding 'PIL/_imagingcms.cp312-win_amd64.pyd'
  adding 'PIL/_imagingcms.pyi'
  adding 'PIL/_imagingft.cp312-win_amd64.pyd'
  adding 'PIL/_imagingft.pyi'
  adding 'PIL/_imagingmath.cp312-win_amd64.pyd'
  adding 'PIL/_imagingmath.pyi'
  adding 'PIL/_imagingmorph.cp312-win_amd64.pyd'
  adding 'PIL/_imagingmorph.pyi'
  adding 'PIL/_imagingtk.cp312-win_amd64.pyd'
  adding 'PIL/_tkinter_finder.py'
  adding 'PIL/_typing.py'
  adding 'PIL/_util.py'
  adding 'PIL/_version.py'
  adding 'PIL/_webp.cp312-win_amd64.pyd'
  adding 'PIL/_webp.pyi'
  adding 'PIL/features.py'
  adding 'PIL/py.typed'
  adding 'PIL/report.py'
  adding 'pillow-10.4.0.dist-info/LICENSE'
  adding 'pillow-10.4.0.dist-info/METADATA'
  adding 'pillow-10.4.0.dist-info/WHEEL'
  adding 'pillow-10.4.0.dist-info/top_level.txt'
  adding 'pillow-10.4.0.dist-info/zip-safe'
  adding 'pillow-10.4.0.dist-info/RECORD'
  removing build\bdist.win-amd64\wheel
  Building wheel for pillow (pyproject.toml): finished with status 'done'
  Created wheel for pillow: filename=pillow-10.4.0-cp312-cp312-win_amd64.whl size=2399665 sha256=d1ad52f7e07478e4765c67b28a5ed305fb56d5c7b8a1a57f6c3fbd88a4b6f2b4
  Stored in directory: C:\Users\\AppData\Local\Temp\1\pip-ephem-wheel-cache-ojae0204\wheels\e2\74\f6\8ce2c9fb5110c7552178a2ebbfb85e18e6e5fc23265cd2cc7b
Successfully built pillow
Installing collected packages: pillow
Successfully installed pillow-10.4.0

@Ganeshkumhar1
Copy link
Author

@radarhere , Please help how can I debug this issue.

@radarhere
Copy link
Member

I'm not a Windows user, so I'm not as familiar with this as I could be. I've tried searching online, but results involve Conda or MinGW, which it doesn't look like you're using.

I imagine you're deliberately installing from source, and are not interested in the wheel.

I expect we would have received other reports by now if something was broken with normal execution of this script, so I imagine there must be something unusual about your setup. Perhaps @nulano has some insight?

@Ganeshkumhar1
Copy link
Author

@nulano could you please provide any pointers or suggestions that might help in debugging the issue?

@radarhere
Copy link
Member

Why are you actually attempting to build from source, rather than installing Pillow normally?

@nulano
Copy link
Contributor

nulano commented Dec 18, 2024

@nulano could you please provide any pointers or suggestions that might help in debugging the issue?

I typically use ProcessMonitor to figure out which DLL is missing and what paths were used to look for it.

  1. Start Python and ProcessMonitor.
  2. Set the filters in ProcessMonitor: the Process Name filter to the name of the Python exe and the Operation filter to CreateFile leaving the other filters at the default.
  3. Run the failing operation in Python.
  4. Stop event capture in ProcessMonitor.
  5. Look for anything that looks wrong like a series of NAME_NOT_FOUND errors or a library being loaded from the wrong path.

image


However, _imaging should not depend on any additional DLLs if built correctly, so I suspect you have some .lib file leaking in from your system; we can diagnose that if you add -C debug=true to your build command, e.g. python -m pip install -v -C raqm=vendor -C fribidi=vendor -C debug=true .. IIRC this usually results in a broken build on Windows, but all we need is the build logs to check what libraries are being used.

While it is likely not causing your issue, I should also note that you sometimes need to delete the Pillow/build directory to get a clean build of Pillow since not all changes (such as rebuilding the dependencies) are detected automatically.

@radarhere
Copy link
Member

@Ganeshkumhar1 was that helpful?

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

No branches or pull requests

3 participants