build-win64-mxe

August 27, 2026 · View on GitHub

libvips and its dependencies cross-compiled for all supported Windows architectures (x86_64, i686 and aarch64).

Uses MXE as base environment. A custom plugin based upon the llvm-mingw repository is used to swap GCC and binutils with Clang and other LLVM-based tools.

Creating a zipball

Most people will not need to do this; proceed with caution.

Run the top-level build script with the --help parameter for help.

libvips-web dependencies

DependencyVersionUsed under the terms of
aom3.14.1BSD 2-Clause + Alliance for Open Media Patent License 1.0
cairo1.18.4Mozilla Public License 2.0
cgif0.5.3MIT License
expat2.8.3MIT License
fontconfig2.18.3fontconfig License (BSD-like)
freetype2.14.3freetype License (BSD-like)
fribidi1.0.16LGPLv3
glib2.89.4LGPLv3
harfbuzz14.3.1MIT License
highway1.4.0BSD 3-Clause
lcms2.19.1MIT License
libarchive3.8.9BSD 2-Clause
libexif0.6.26LGPLv3
libffi3.8.0MIT License
libheif1.23.2LGPLv3
libimagequant2.4.11BSD 2-Clause
libpng1.6.58libpng License version 2
librsvg2.62.91LGPLv3
libtiff4.7.2libtiff License (BSD-like)
libultrahdr2.0.2MIT License
libvips8.18.6LGPLv3
libwebp1.6.0New BSD License
libxml22.15.3MIT License
mozjpeg0826579zlib License, IJG License, BSD 3-Clause
pango1.58.2LGPLv3
pixman0.46.4MIT License
proxy-libintl0.5LGPLv3
zlib-ng2.3.3zlib-ng License

libvips-all dependencies

Same as libvips-web + these extra dependencies:

DependencyVersionUsed under the terms of
brotli1.2.0MIT License
cfitsio4.7.0BSD-like
fftw3.3.11GPLv2
imagemagick7.1.2-30ImageMagick License (Apache-2.0-like)
imath3.2.2BSD 3-Clause
libdicom1.3.0MIT License
libjxl0.12.0BSD 3-Clause
libraw0.22.2LGPL-2.1-only
matio1.6.0BSD 2-Clause
nifticlib3.0.1Public domain
openexr3.1.13BSD 3-Clause
openjpeg2.5.4BSD 2-Clause
openslide4.0.1LGPL-2.1-only
poppler26.08.0GPLv2
sqlite3.53.4Public domain
zstd1.5.7BSD 3-Clause

libjpeg-turbo

libvips does not use any of MozJPEG's improvements by default unless explicitly set, yet one can still choose to build the above variants with libjpeg-turbo instead of MozJPEG. This can be accomplished with the --with-jpeg-turbo argument. For example:

./build.sh --with-jpeg-turbo

In that case, the following version of libjpeg-turbo is built:

DependencyVersionUsed under the terms of
libjpeg-turbo3.2.0zlib License, IJG License

jpegli

jpegli is an improved JPEG encoder and decoder implementation, fully compatible with the API/ABI of libjpeg62. It leverages many of the insights from related projects like guetzli, butteraugli, and JPEG XL to achieve a higher quality-per-byte for JPEG images. To enable this, use the --with-jpegli argument when building. For example:

./build.sh --with-jpegli

In that case, the following version of jpegli is built:

DependencyVersionUsed under the terms of
jpegli031a007BSD 3-Clause

zlib

By default, zlib-ng is built. This is a zlib replacement with optimizations for "next generation" systems. You can use the --without-zlib-ng argument during the build when (vanilla-)zlib is preferred. For example:

./build.sh --without-zlib-ng

In that case, the following version of zlib is built:

DependencyVersionUsed under the terms of
zlib1.3.2zlib License

The above variants can optionally be built with libde265 and x265 to process HEIC images. This can be turned on with the --with-hevc argument. For example:

./build.sh --with-hevc

These dependencies include HEVC-related logic and are therefore not included in the prebuilt binaries while it is patent-encumbered.

DependencyVersionUsed under the terms of
libde2651.1.1LGPLv3
x2654.3GPLv2

Footnotes

  1. A fork of the BSD 2-Clause licensed libimagequant v2.4.1 is used.