libvips/README.md

161 lines
4.1 KiB
Markdown
Raw Normal View History

2012-06-29 13:20:50 +02:00
# libvips : an image processing library
2007-08-29 18:23:50 +02:00
libvips is an image processing library. It's good for large images and for
2007-08-29 18:23:50 +02:00
colour. There's a GUI as well, see the VIPS website:
http://www.vips.ecs.soton.ac.uk
2011-01-06 15:18:00 +01:00
There are packages for most unix-like operating systems, and binaries for
Windows and OS X.
2008-03-26 17:56:51 +01:00
2012-06-29 13:20:50 +02:00
# Building libvips from source
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
In the libvips directory you should just be able to do:
2007-08-29 18:23:50 +02:00
2009-08-27 15:07:58 +02:00
$ ./configure
$ make
$ sudo make install
2007-08-29 18:23:50 +02:00
2008-03-26 17:56:51 +01:00
By default this will install files to /usr/local.
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
See the Dependencies section below for a list of the things that
libvips needs in order to be able to build.
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
We have detailed guides on the wiki for [building on
Windows](http://www.vips.ecs.soton.ac.uk/index.php?title=Build_on_windows)
and [building on OS
X](http://www.vips.ecs.soton.ac.uk/index.php?title=Build_on_OS_X).
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
# Building libvips from GIT
2009-08-27 15:07:58 +02:00
Checkout the latest sources with:
git clone git://github.com/jcupitt/libvips.git
2009-08-27 15:07:58 +02:00
Then for a debug build:
2009-08-27 15:07:58 +02:00
$ ./bootstrap.sh
$ CFLAGS="-g -Wall" CXXFLAGS="-g -Wall" ./configure --prefix=/home/john/vips --enable-gtk-doc
$ make
$ make install
2012-06-29 13:20:50 +02:00
# Dependencies
2007-08-29 18:23:50 +02:00
libvips has to have gettext, glib-2.x and libxml-2.0. The build system needs
2012-06-29 13:20:50 +02:00
sh, pkg-config and gnu make.
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
# Optional dependencies
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
If suitable versions are found, libvips will add support for the following
libraries automatically. See "./configure --help" for a set of flags to
control library detection. Packages are generally found with pkg-config,
so make sure that is working.
2007-08-29 18:23:50 +02:00
libtiff and libjpeg do not usually use pkg-config so libvips looks for
them in the default path and in $prefix. If you have installed your own
versions of these libraries in a different location, libvips will not see
them. Use switches to libvips configure like:
2007-08-29 18:23:50 +02:00
2008-10-11 23:29:16 +02:00
./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
2007-08-29 18:23:50 +02:00
to get libvips to see your builds.
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
## libjpeg
The IJG JPEG library.
## libexif
if available, libvips 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.
## libz
If your TIFF library includes ZIP compression, you'll need this too.
## videodev.h
If libvips finds linux/videodev.h, you get support for Linux video
grabbing.
## fftw3
If libvips finds this library, it uses it for fourier transforms. It
can also use fftw2, but 3 is faster and more accurate.
## lcms2, lcms
If present, im_icc_import(), _export() and _transform() are available
for transforming images with ICC profiles. If lcms2 is available,
it is used in preference to lcms.
## Large files
libvips 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, libvips can load and save png files.
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
## libMagick, or optionally GraphicsMagick
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
if available, libvips adds support for loading all libMagick supported
image file types (about 80 different formats). Use
--with-magickpackage to build against graphicsmagick instead.
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
## pangoft2
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
if available, libvips adds support for text rendering. You need the
package pangoft2 in "pkg-config --list-all"
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
## orc-0.4
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
if available, vips will accelerate some operations with this run-time
compiler
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
## matio
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
if available, vips can load images from Matlab save files
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
## cfitsio
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
if available, vips can load FITS images
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
## OpenEXR
2011-01-06 15:18:00 +01:00
2012-06-29 13:20:50 +02:00
if available, libvips will directly read (but not write, sadly)
OpenEXR images
2011-01-06 15:18:00 +01:00
2012-06-29 13:20:50 +02:00
## OpenSlide
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
if available, libvips can load OpenSlide-supported virtual slide
files: Aperio, Hamamatsu VMS and VMU, MIRAX, and Trestle
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
## swig, python, python-dev
2011-12-08 20:49:53 +01:00
2012-06-29 13:20:50 +02:00
if available, we build the python binding too
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
# Disclaimer
2007-08-29 18:23:50 +02:00
2012-06-29 13:20:50 +02:00
No guarantees of performance accompany this software, nor is any
2007-08-29 18:23:50 +02:00
responsibility assumed on the part of the authors. Please read the licence
agreement.