CamlImages - Objective Caml image processing library This library is reliable but still under development. *** Requirements To install CamlImages library, you need the following softwares: * ocaml 3.08 or higher * GNU make * automake (1.7.9 does not work. 1.9.6 works) and that is all. But note that this is the minimum requirement: you can read/write BMP or PXM (PPM, PGM, PBM) image formats but no other formats. If you want to deal with other image formats, you need to install the corresponding external libraries: * libpng for PNG format http://www.libpng.org/pub/png/libpng.html http://sourceforge.net/projects/libpng/ * libjpeg for JPEG format The Independent JPEG Group's software ftp://ftp.uu.net/graphics/jpeg/jpegsrc.v6b.tar.gz * libtiff for TIFF format http://www.libtiff.org/ ftp://ftp.remotesensing.org/pub/libtiff/ * libxpm for XPM format (could be already by the X server installation) X contrib libraries ftp directory ftp://ftp.x.org/contrib/libraries * freetype for drawing texts using truetype fonts The FREETYPE Project http://sourceforge.net/projects/freetype/ * libungif for GIF format Because of the GIF patent problem of Unisys, we do not recommend to use GIF file format. If you really want to use GIF, do it in your own risk. Libungif, a library for using GIFs without compression. http://sourceforge.net/projects/libungif/ * ghostscript for PS format See http://www.ghostscript.com/ Additionaly, optional support for either lablgtk and lablgtk2 is provided, but not both at once, as they use conflicting symbols: * lablgtk, an Objective Caml interface to gtk+ http://wwwfun.kurims.kyoto-u.ac.jp/soft/olabl/lablgtk.html *** Installation procedure Generating build scripts ------------------------ This is only needed if you're using CVS version directly. * make sure ocaml autoconf macros, available from bazar-ocaml/autoconf directory, are present in aclocal macro search path, by any of the following solution: - export ACLOCAL='aclocal -I <directory>' before invoking autoreconf - set up a dirlist file in automake macro directory, as explained in aclocal documentation * run autoreconf --install Configuration ------------- Just run the standard configure script: % ./configure If the script can't find some installed external libraries, this is probably because they are installed in locations not included in linker or preprocessor configuration. You'll have to passe proper flags while running configure script: %./configure CFLAGS=-I/usr/local/include LDFLAGS=-L/usr/local/lib %./configure CFLAGS=-I/sw/include LDFLAGS=-L/sw/lib If problems persist, check config.log for failure details. The script allow some user configuration. Check help output for details: % ./configure --help Compilation ----------- type % make and wait. Test ---- Before you actually install the library, you can check that it really works, by running examples in the test directory. For the test programs, % cd test % make % ./test % ./test.byt (./test.byt is the bytecode executable and ./test the binary executable). Installation ------------ If there is no compilation error and the test works fine, install the library, % make install This installs all the required files into the $(LIBDIR) directory specified in Makefile.config (usually /usr/local/lib/ocaml/camlimages or /usr/lib/ocaml/camlimages). If you want to create a toplevel with camlimages, type in % make top that creates a toplevel named "customtop". Then, % toplevel executes customtop with the appropriate options. Example applications -------------------- In the examples directory you can find several example applications using Camlimages. Some of the programs use the lablgtk GUI (in particular liv and gifanim): you cannot compile them if the lablgtk library has not been installed. To compile the examples execute: % cd examples % make