VIPS
====
VIPS is an image processing library. It's good for large images and for
colour. There's a GUI as well, see the VIPS website:
http://www.vips.ecs.soton.ac.uk
There are packages for most linuxes and OS X. There is a pre-compiled windows
binary on the vips website.
Building VIPS from source
=========================
In the VIPS directory, you should just be able to do:
$ ./configure
$ make
$ sudo make install
By default this will install files to /usr/local.
If you have problems, read on.
Building VIPS on win32
----------------------
The easiest route is to use mingw/msys. This provides a GNU-style
build environment for win32.
http://www.vips.ecs.soton.ac.uk/index.php?title=Build_on_windows
You can also cross-compile from a unix system to windows.
Building VIPS on OS X
---------------------
There are packages in macports.
http://www.macports.org
Building VIPS from SVN
----------------------
Checkout the latest sources with:
svn co https://vips.svn.sourceforge.net/svnroot/vips/vips7
Then:
$ ./bootstrap.sh
$ CFLAGS="-g -Wall" CXXFLAGS="-g -Wall" ./configure --prefix=/home/john/vips --enable-gtk-doc
$ make
$ make install
Dependencies
============
VIPS has to have gettext, glib-2.x and libxml-2.0. The build system needs
pkg-config and gnu make.
Optional dependencies
---------------------
Optional support libraries ... also try ./configure --help to see flags for
controlling these libs. By default, if suitable versions are found, VIPS will
build support for them automatically.
VIPS looks for stuff with pkg-config, so make sure pkg-config can find these
extra libraries. libtiff and libjpeg do not generally use pkg-config, so
VIPS looks for them in the default path and in $prefix. If you have installed
your own versions of these libraries in a different location, vips will not see
them. Use switches to VIPS configure like:
./configure --prefix=/Users/john/vips \
--with-tiff-includes=/opt/local/include \
--with-tiff-libraries=/opt/local/lib \
--with-jpeg-includes=/opt/local/include \
--with-jpeg-libraries=/opt/local/lib
or perhaps:
CFLAGS="-g -Wall -I/opt/local/include -L/opt/local/lib" \
CXXFLAGS="-g -Wall -I/opt/local/include -L/opt/local/lib" \
./configure --without-python --prefix=/Users/john/vips
to get VIPS to see your builds.
libjpeg
The IJG JPEG library. We use 6b, but 6a works too.
libexif
if available, VIPS adds support for EXIF metadata in JPEG files
libtiff
The TIFF library. It needs to be built with support for JPEG and
ZIP compression. 3.4b037 and later are known to be OK.
You'll need libz for this too. We use 1.1.3, others should work.
libz
If your TIFF library includes ZIP compression, you'll need this too.
videodev.h
If VIPS finds linux/videodev.h, you get support for Linux video
grabbing.
fftw3
If VIPS finds this library, it uses it for fourier transforms. It can
also use fftw2, but 3 is faster and more accurate.
If the library is not found, VIPS falls back to it's own internal FFT
routines which are slower and less accurate.
lcms
If present, im_icc_import(), _export() and _transform() are available
for transforming images with ICC profiles.
large files
VIPS uses the standard autoconf tests to work out how to support large
files (>2GB) on your system. Any reasonably recent *nix should be OK.
libpng
if present, VIPS can load and save png files. Version 1.2+ preferred.
libMagick, or optionally GraphicsMagick
if available, VIPS adds support for loading all libMagick supported
image file types (about 80 different formats). No saving though.
pango
freetype2
fontconfig
if available, VIPS adds support for text rendering. You need the
package pangoft2 in "pkg-config --list-all"
liboil
if available, you get some inner loops replcaed by calls to liboil's
library of optimised inner loops
OpenEXR
if available, VIPS will directly read (but not write, sadly) OpenEXR
images
swig
python
python-dev
if available, we build the python binding too
Disclaimer
----------
Disclaimer: No guarantees of performance accompany this software, nor is any
responsibility assumed on the part of the authors. Please read the licence
agreement.