Files
rawTherapee/COMPILE.txt

203 lines
8.1 KiB
Plaintext

If you have problems with the compilation, please ask on the appropriated RawTherapee forum :
http://www.rawtherapee.com/forum/viewforum.php?f=10
Windows
-------
Dependancies:
This section explain how to build the libraries needed by RawTherapee, and not provided in other packages.
For your convenience, those libraries has been precompiled and are downloadable at :
http://www.rawtherapee.com/releases_head/windows/dependancies/
If you don't find a suitable package for your toolchain, build it yourself if you can or ask a developer
to do it for you.
Just unpack the content of this archive to the base installation dir of MinGW, and everything
should work fine.
Requirements:
- MinGW + MSYS
Let's say that you have intalled them respectively to "C:\mingw" and "C:\msys".
This tutorial assume that you've installed MinGW and MSYS in a path that does not contain spaces
Open an MSYS console and compile the dependancies in that order:
zlib:
If you have Gtkmm2.22 installed, you can skip this section
- download: http://zlib.net/
- how to build:
cd to the unarchiving directory of zlib-1.2.5
make -f win32/Makefile.gcc
Then, manually copy the files as follows:
cp -iv zlib1.dll /mingw/bin
cp -iv zconf.h zlib.h /mingw/include
cp -iv libz.a /mingw/lib
cp -iv libzdll.a /mingw/lib/libz.dll.a
libpng:
If you have Gtkmm2.22 installed, you can skip this section
- download: http://sourceforge.net/projects/libpng/files/
(please note that libpng 1.5 has not been tested yet)
- how to build:
cd to the unarchiving directory of lpng144
There's two options to build libpng :
1. gtkmm doesn't provide zlib so i've compiled it myself
cmake -G "MSYS Makefiles" -DCMAKE_INSTALL_PREFIX:PATH=/mingw -DCMAKE_BUILD_TYPE:STRING=Release
2. gtkmm provide zlib and i want to reuse it (so we're assuming that you didn't compiled zlib like explained here above)
cmake -G "MSYS Makefiles" -DCMAKE_INSTALL_PREFIX:PATH=/mingw -DCMAKE_PREFIX_PATH:PATH=C:/gtkmm2.22 -DCMAKE_BUILD_TYPE:STRING=Release
Then build and install:
make
make install
libjpeg:
- download: http://www.ijg.org/
- how to build:
cd to the unarchiving directory of jpeg-8b
./configure --prefix=/mingw
copy the content of jconfig.txt to jconfig.h (overwrite the existing file)
make
make install
libtiff:
- download: ftp://ftp.remotesensing.org/pub/libtiff/
- how to build:
./configure --prefix=/mingw
make
cd libtiff
make install
libiptcdata:
- download: http://libiptcdata.sourceforge.net/
- how to build:
./configure --prefix=/mingw
edit iptc\main.c and comment out lines 830 up to 859 (libiptcdata-1.0.4)
make
make install
lcms:
- download v1.x (2.x is not implemented yet): http://sourceforge.net/projects/lcms/files/
- how to build:
./configure --prefix=/mingw
make
make install
Rawzor:
provided in RT's source tree (downloaded from http://www.rawzor.com/developers/)
IMPORTANT:
1. When all the compilations are done (or even before), don't forget to set the PKG_CONFIG_PATH
environment variable to the location of the pkgconfig dir, usually c:\mingw\lib\pkgconfig
2. Make sure that the *.pc files of the dependancies, located in the pkgconfig dir, has the first
line like this : prefix=/mingw
If everything is well installed, you should see the following lines when running the cmake command (see below) :
-- checking for module 'libiptcdata'
-- found libiptcdata, version 1.0.4
-- checking for module 'lcms<=1.99'
-- found lcms, version 1.19
-- Found JPEG: C:/mingw/lib/libjpeg.dll.a
-- Found ZLIB: C:/gtkmm2.22/lib/libz.dll.a
-- Found PNG: C:/gtkmm2.22/lib/libpng.lib
-- Found TIFF: C:/mingw/lib/libtiff.dll.a
Building RT:
METHOD 1:
Requirements:
- MinGW + MSYS
- CMake
- GTK and GTKMM development environments
Compile:
- Start MSYS
- Enter the root directory of the RawTherapee source tree
- Type: cmake -G "MSYS Makefiles" .
- Type: make install
- You find the compiled program in the release directory
METHOD 2:
Requirements:
- tdm-gcc (http://sourceforge.net/projects/tdm-gcc/files/TDM-GCC%20Installer/tdm-gcc-4.5.1.exe/download)
- cmake (http://www.cmake.org/cmake/resources/software.html)
- mercurial (http://mercurial.selenic.com/wiki/WindowsInstall)
- gtkmm (http://ftp.se.debian.org/pub/gnome/binaries/win32/gtkmm/2.22/)
Compile:
- Enter the root directory of the RawTherapee source tree
- Type: cmake -G "MinGW Makefiles" -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=./release -DBINDIR=. -DDATADIR=. -DLIBDIR=.
- Type: mingw32-make.exe install
- You find the compiled program in the "release" directory
Linux
-----
Requirements:
- CMake
- GTK and GTKMM development packages
- libtiff, libpng, libjpeg, lcms, libiptcdata development packages
- ...did I forget something?
On Ubuntu/Debian the requirements can be installed by running:
sudo apt-get install build-essential cmake libgtk2.0-dev libgtkmm-2.4-dev libtiff-dev libpng-dev libjpeg-dev liblcms-dev libiptcdata-dev merciurial
Compile:
- Enter the root directory of the RawTherapee source tree
- Type: cmake -DCMAKE_INSTALL_PREFIX=./release -DBINDIR=. -DDATADIR=. -DLIBDIR=.
- Type: make install
- You find the compiled program in the release directory (you can copy it anywhere you want)
(By changing the cmake flags, you can change where the release is. By removing all flags it should go to the standard system install location).
Using Eclipse under Linux:
Eclipse mercurial plugin:
click Help -> Install new Software.
The Eclipse Update Site for MercurialEclipse is available at this URL:
http://cbes.javaforge.com/update
Import the rawtherapee mercurial repository:
File->new->'other'->mercurial->Clone existing repository
fill in URL: https://rawtherapee.googlecode.com/hg
Enter root directory of RawTherapee source tree from a terminal window.
configure the source for Eclipse with:
cmake -G "Eclipse CDT4 - Unix Makefiles" -DCMAKE_INSTALL_PREFIX=./release -DBINDIR=. -DDATADIR=. -DLIBDIR=. -DCMAKE_BUILD_TYPE=Release
Eclipse does not do 'make install' but only 'make all' so to get the release there are 2 ways.
1. type 'make install' in the console or,
2. in 'Project'->'properties'->'C/C++ Make Project'->'Build (incremental build)' change 'all' to 'install'
OSX
---
Requirements:
- XCode Development Tools (you only need a subset of these, but it is probably easier to just install all of them)
- MacPorts
- Set /opt/local/etc/macports/variants.conf to include "+no_x11 +quartz"
- If you want to build for multiple architectures, add +universal to variants.conf. Note that this will increase the size of the final application substantially.
- Set /opt/local/etc/macports/macports.conf key 'universal_archs' to the architectures you wish to build for. Possible values
include "i386 x86_64 ppc ppc64"
- Edit beginning of CMakeLists.txt to enable the same architectures as you added to variants.conf
- Run "sudo port install cairomm pango-devel gtk2 cmake glibmm gtkmm lcms libiptcdata" to install all needed libraries and tools
- If you don't already have Mercurial installed, run "sudo port install mercurial"
- If you want to try OpenMP builds, run "sudo port install gcc45"
Compile:
- Enter root directory of RawTherapee source tree
- Type: cmake -D CMAKE_C_COMPILER=gcc-mp-4.5 -D CMAKE_CXX_COMPILER=g++-mp-4.5 . (to enable OpenMP, assuming you have installed gcc45) OR:
cmake -D OPTION_OMP=false . (to disable OpenMP and use the default compiler)
- Type: make install
- Type: ./tools/osx/make-app-bundle
- You will find a RawTherapee.dmg file in release/ folder; this is the distribution release and can be run on any machine which meets the
architecture requirements you specified in variants.conf earlier.
For any bugs or patches to the OSX build, please contact Wyatt <wyatt@digitalcave.ca>