libvips logo

libvips libvips

Use this command to install libvips:
winget install --id=libvips.libvips -e

A fast image processing library with low memory needs.

README

build-win64-mxe

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.12.1BSD 2-Clause + Alliance for Open Media Patent License 1.0
cairo1.18.4Mozilla Public License 2.0
cgif0.5.0MIT Licence
expat2.7.1MIT Licence
fontconfig2.17.1fontconfig Licence (BSD-like)
freetype2.13.3freetype Licence (BSD-like)
fribidi1.0.16LGPLv3
glib2.85.1LGPLv3
harfbuzz11.2.1MIT Licence
highway1.2.0Apache-2.0 License, BSD 3-Clause
lcms2.17MIT Licence
libarchive3.8.1BSD 2-Clause
libexif0.6.25LGPLv3
libffi3.5.1MIT Licence
libheif1.20.1LGPLv3
libimagequant2.4.1¹BSD 2-Clause
libpng1.6.50libpng License version 2
librsvg2.60.0LGPLv3
libspng0.7.4BSD 2-Clause
libtiff4.7.0libtiff License (BSD-like)
libvips8.17.1LGPLv3
libwebp1.5.0New BSD License
libxml22.14.4MIT Licence
mozjpeg4.1.5zlib License, IJG License, BSD-3-Clause
pango1.56.4LGPLv3
pixman0.46.2MIT Licence
proxy-libintl0.4LGPLv3
zlib-ng2.2.4zlib-ng Licence

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

libvips-all dependencies

Same as libvips-web + these extra dependencies:

DependencyVersionUsed under the terms of
brotli1.1.0MIT Licence
cfitsio4.6.2BSD-like
fftw3.3.10GPLv2
gdk-pixbuf2.43.3LGPLv3
imagemagick6.9.13-25ImageMagick License (Apache-2.0-like)
imath3.1.9BSD 3-Clause
libdicom1.2.0MIT Licence
libjxl0.11.1BSD 3-Clause
matio1.5.28BSD 2-Clause
nifticlib3.0.1Public domain
openexr3.1.11BSD 3-Clause
openjpeg2.5.3BSD 2-Clause
openslide4.0.0LGPLv3
poppler25.07.0GPLv2
sqlite3.50.2Public domain

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.1.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
jpegli5126d62BSD 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.1zlib Licence

HEVC-related dependencies

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.0.16LGPLv3
x2654.1GPLv2
Versions
8.16.1
Website
License