Image metadata library and tools


There are two packages available for download here: the original source package and one with just a Windows executable.

From the source package you can build the Exiv2 library, command line utility, the organize tool and a number of simple example and test applications. With a few additional third party tools you can also generate the complete API documentation. The package includes standard build files for UNIX-like systems (including GNU/Linux, Mac OS X, MinGW and Cygwin) as well as Visual Studio project files for Visual C++ .NET 2003 (MSVC 7.1) and later. After downloading and unpacking the distribution, please see the README file in the top directory for build and installation notes and further information.

The Windows package only contains the command line utility exiv2.exe, Expat DLL, Exiv2 manpage and two sample command files. To get started, run the executable with the -h parameter from a cmd shell: exiv2 -h. For details, read the man page. The Windows executable was compiled with the MinGW cross compiler on an x86-64 machine running Ubuntu.

As an alternative to the packages here, many Linux distributions, BSD-based systems and Open Source package collections for Darwin and Mac OS X have their own Exiv2 packages that can be installed via the package management system of the distribution.

Package Filename Size (Bytes) Date MD5
Exiv2 v0.25 Source exiv2-0.25.tar.gz 5434325 21-Jun-2015 258d4831b30f75a01e0234065c6c2806
Exiv2 v0.25 Windows executable 1864291 21-Jun-2015 2a56b70e0ccc70e5fca308b7e34e4e52

Older releases are also still available. See the ChangeLog for a detailed list of changes between releases.

Exiv2 is developed on GNU/Linux with recent versions of GCC. Written in C++, it uses the standard C++ library, a few POSIX and C functions and is fairly portable. Dependencies are on zlib for PNG support, gettext for NLS, libiconv for characterset conversions and Expat for XMP support. (Note that modern Linux distributions usually have gettext and iconv in libc and these features can be disabled individually.)


Exiv2 is maintained in a Subversion repository. You can browse the source code online or get a copy of the latest development code from the repository. Once you have the source code, see the README file in the top directory for build and installation notes.

To check-out the current source code from the repository, you need a Subversion client. If you use a command line client, change to the directory where you want to keep the source code and type:

$ svn checkout svn://

Not included in the source distribution are test data and several test drivers. To download these directly from the repository (about 34 MB), change to your local exiv2-0.25/ directory and use the following command:

$ svn export svn://


Exiv2 is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

Alternatively, Exiv2 is also available with a commercial license, which allows it to be used in closed-source projects. Contact me for more information.

Exiv2 is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.