winbuild/README.md
For more extensive info, see the Windows build instructions.
See Current Windows Build/Testing process (Pillow#553), Definitive docs for how to compile on Windows (matplotlib#1717), Test Windows with GitHub Actions (Pillow#4084).
Requires Microsoft Visual Studio 2017 or newer with C++ component.
Requires NASM for libjpeg-turbo, a required dependency when using this script.
Requires CMake 3.15 or newer (available as Visual Studio component).
Tested on Windows Server 2025 and 2022 with Visual Studio 2022 Enterprise (GitHub Actions).
Here's an example script to build on Windows:
set PYTHON=C:\Python310\bin
cd /D C:\Pillow\winbuild
%PYTHON%\python.exe build_prepare.py -v --depends=C:\pillow-depends
build\build_dep_all.cmd
cd ..
%PYTHON%\python.exe -m pip install -v -C raqm=vendor -C fribidi=vendor .
path C:\Pillow\winbuild\build\bin;%PATH%
%PYTHON%\python.exe selftest.py
%PYTHON%\python.exe -m pytest -vv -x --cov PIL --cov Tests --cov-report term --cov-report xml Tests
%PYTHON%\python.exe -m pip wheel -v -C raqm=vendor -C fribidi=vendor .