Compiling the Utilities
Stay organized with collections
Save and categorize content based on your preferences.
If the precompiled utilities don't suit your
needs, you can build the WebP utilities yourself.
Compiling on Windows with Visual C++
Download libwebp-1.6.0.tar.gz
from the downloads list
and extract its contents.
From the libwebp-1.6.0
directory, run:
nmake /f Makefile.vc CFG=release-static RTLIBCFG=static OBJDIR=output
To see additional options, run:
nmake /f Makefile.vc
The directory output\release-static\x86\bin
or
output\release-static\x64\bin
will contain the tools cwebp.exe
and
dwebp.exe
depending on the platform being targeted. The directory
output\release-static\(x86|x64)\lib
will contain the libwebp
static
library.
Linux
Install the libjpeg
, libpng
, libtiff
and libgif
packages, needed to
convert between JPEG, PNG, TIFF, GIF and WebP image formats.
Package management varies by Linux distribution. On Ubuntu and Debian, the
following command will install the needed packages:
sudo apt-get install libjpeg-dev libpng-dev libtiff-dev libgif-dev
Complete the installation (see below).
macOS
MacPorts is a convenient way to satisfy dependencies. If you already have
MacPorts installed, go directly to Step 3. Otherwise, follow these steps:
Download MacPorts for your macOS version from the MacPorts
downloads site. MacPorts requires
the installation of
Xcode.
Install MacPorts following the MacPorts
directions.
Update MacPorts:
sudo port selfupdate
Install the JPEG, PNG, TIFF and GIF dependencies:
sudo port install jpeg libpng tiff giflib
Complete the installation (see below).
Cygwin
Download setup.exe from the Cygwin web page.
Run setup.exe and proceed through the installation.
At the Select Packages screen, add to the pre-selected packages the
following:
libjpeg-devel
, libpng-devel
, libtiff-devel
and libgif-devel
gcc
, make
and automake
(for building packages)
Complete the installation (see below).
Building
Download libwebp-1.6.0.tar.gz
from the
downloads list.
Untar or unzip the package. This creates a directory named libwebp-1.6.0/
:
tar xvzf libwebp-1.6.0.tar.gz
Build WebP encoder cwebp
and decoder dwebp
:
Go to the directory where libwebp-1.6.0/
was extracted to
and run the following commands:
cd libwebp-1.6.0
./configure
make
sudo make install
This builds and installs the cwebp
and dwebp
command line tools, along
with the libwebp
libraries (dynamic and static).
These tools are usually installed under /usr/local/bin/
by default. The
local versions are built under the examples/
directory.
The library will usually be installed under the /usr/local/lib/
directory.
To avoid run-time errors, make sure that your LD_LIBRARY_PATH
environment
variable includes this location. The C headers are typically installed under
/usr/local/include/webp
.
To see additional options, run:
./configure --help
What Next?
Go to Using WebP for instructions on how to start
converting your images.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2025-08-07 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-07 UTC."],[[["\u003cp\u003eThis page provides instructions for building WebP utilities (\u003ccode\u003ecwebp\u003c/code\u003e and \u003ccode\u003edwebp\u003c/code\u003e) from source code if precompiled options are unsuitable.\u003c/p\u003e\n"],["\u003cp\u003eBuilding on Windows involves using Visual C++ with specific commands to compile the utilities and library.\u003c/p\u003e\n"],["\u003cp\u003eFor Unix-like platforms (Linux, macOS, Cygwin), instructions cover installing necessary dependencies before building the WebP tools.\u003c/p\u003e\n"],["\u003cp\u003eThe building process on Unix-like systems involves downloading the source code, configuring, compiling, and installing the utilities and libraries.\u003c/p\u003e\n"],["\u003cp\u003eAfter building the utilities, users can proceed to the "Using WebP" page for image conversion instructions.\u003c/p\u003e\n"]]],["To build WebP utilities: Windows users download `libwebp-1.5.0.tar.gz`, then use `nmake` in the `libwebp-1.5.0` directory to compile, producing `cwebp.exe` and `dwebp.exe` in the output. Unix-like users install `libjpeg`, `libpng`, `libtiff`, and `libgif` packages, then download and extract `libwebp-1.5.0.tar.gz`. Navigate to the directory and run `./configure`, `make`, and `sudo make install` to build and install `cwebp` and `dwebp`.\n"],null,["If the [precompiled utilities](/speed/webp/docs/precompiled) don't suit your\nneeds, you can build the WebP utilities yourself.\n\nCompiling on Windows with Visual C++\n\n1. Download `libwebp-1.5.0.tar.gz` from the [downloads list](https://storage.googleapis.com/downloads.webmproject.org/releases/webp/index.html)\n and extract its contents.\n\n2. From the `libwebp-1.5.0` directory, run:\n\n nmake /f Makefile.vc CFG=release-static RTLIBCFG=static OBJDIR=output\n\n To see additional options, run: \n\n nmake /f Makefile.vc\n\n3. The directory `output\\release-static\\x86\\bin` or\n `output\\release-static\\x64\\bin` will contain the tools `cwebp.exe` and\n `dwebp.exe` depending on the platform being targeted. The directory\n `output\\release-static\\(x86|x64)\\lib` will contain the `libwebp` static\n library.\n\nCompiling on Unix-like Platforms\n\nPreparing the Platform\n\nLinux\n\n1. Install the `libjpeg`, `libpng`, `libtiff` and `libgif` packages, needed to\n convert between JPEG, PNG, TIFF, GIF and WebP image formats.\n\n Package management varies by Linux distribution. On Ubuntu and Debian, the\n following command will install the needed packages: \n\n sudo apt-get install libjpeg-dev libpng-dev libtiff-dev libgif-dev\n\n2. Complete the installation ([see below](#building)).\n\nmacOS\n\nMacPorts is a convenient way to satisfy dependencies. If you already have\nMacPorts installed, go directly to Step 3. Otherwise, follow these steps:\n\n1. Download MacPorts for your macOS version from the MacPorts\n [downloads site](https://distfiles.macports.org/MacPorts). MacPorts requires\n the installation of\n [Xcode](https://developer.apple.com/xcode/).\n\n2. Install MacPorts following the MacPorts\n [directions](https://guide.macports.org/).\n\n3. Update MacPorts:\n\n sudo port selfupdate\n\n4. Install the JPEG, PNG, TIFF and GIF dependencies:\n\n sudo port install jpeg libpng tiff giflib\n\n5. Complete the installation ([see below](#building)).\n\nCygwin\n\n1. Download setup.exe from the [Cygwin web page](https://www.cygwin.com).\n\n2. Run setup.exe and proceed through the installation.\n\n3. At the **Select Packages** screen, add to the pre-selected packages the\n following:\n\n - `libjpeg-devel`, `libpng-devel`, `libtiff-devel` and `libgif-devel`\n\n - `gcc`, `make` and `automake` (for building packages)\n\n4. Complete the installation ([see below](#building)).\n\nBuilding\n\n1. Download `libwebp-1.5.0.tar.gz` from the\n [downloads list](https://storage.googleapis.com/downloads.webmproject.org/releases/webp/index.html).\n\n2. Untar or unzip the package. This creates a directory named `libwebp-1.5.0/`:\n\n tar xvzf libwebp-1.5.0.tar.gz\n\n3. Build WebP encoder `cwebp` and decoder `dwebp`:\n\n Go to the directory where `libwebp-1.5.0/` was extracted to\n and run the following commands: \n\n cd libwebp-1.5.0\n ./configure\n make\n sudo make install\n\n This builds and installs the `cwebp` and `dwebp` command line tools, along\n with the `libwebp` libraries (dynamic and static).\n\n These tools are usually installed under `/usr/local/bin/` by default. The\n local versions are built under the `examples/` directory.\n\n The library will usually be installed under the `/usr/local/lib/` directory.\n To avoid run-time errors, make sure that your `LD_LIBRARY_PATH` environment\n variable includes this location. The C headers are typically installed under\n `/usr/local/include/webp`.\n\n To see additional options, run: \n\n ./configure --help\n\nWhat Next?\n\nGo to [Using WebP](/speed/webp/docs/using) for instructions on how to start\nconverting your images."]]