Compiling source code
From Zarafa wiki
Contents |
Requirements
The following packages are required to compile the Zarafa source code: Grouped by distribution type. For CentOS and Fedora, use the RedHat list, for Ubuntu and Debian and derivatives use the Debian list. For Ubuntu users we have the Install from source on Ubuntu guide.
| RedHat | SuSE | Debian |
|---|---|---|
|
|
|
While these lists may not be complete, it will get you in the right direction of most packages that are required.
Extra dependencies
After that there is one library which normally doesn't have a package, and must be compiled and installed by hand. The source can be downloaded here:
Zarafa provides patches to fix some bugs in this library. If you are compiling the library, it would be best to apply the patches.
You can find a list of the patches and the download on the Libvmime patches page.
Note: Debian 4.0 and Ubuntu 8.04 and newer do contain packages for these libraries, but are incompatible versions. You must use the Zarafa provided versions of the libraries in order to compile Zarafa.
6.20 specific dependancy
For version 6.20, libical 0.23 must be used, and can be downloaded here:
6.30 specific dependancy
For version 6.30, libical 0.44 is shipped with binaries, but the interface is compatible with slightly older and newer versions. If you want to compile this library too, use the upstream version, which can be found here: http://sourceforge.net/projects/freeassociation/ Your distribution may already ship this as a package, so maybe you would want to use those packages. To download the version Zarafa uses to compile the packages with, follow this link:
The extra patch is required to correctly disable a define. You also must add the --disable-icalerrors-are-fatal switch to the configure script to correctly compile the library for use with Zarafa.
6.40 specific depandancy
To compile 6.40 with the zarafa-indexer, you'll need CLucene. Please use the following downloads to compiile the correct library (0.9.21b not just 0.9.21).
The upstream development can be found here: http://clucene.sourceforge.net/
6.30 and up optional dependancies
To improve memory usage, you can use the google-perftools to use the Thread-Cached malloc library. Zarafa allocates memory in one thread, and may free this in another thread. The default malloc in glibc6 cannot handle this well, and may use too much memory. Zarafa uses google-perftools 1.3, and can be downloaded here:
The upstream development can be found here: http://code.google.com/p/google-perftools/
Download
The Zarafa source code can be found on www.zarafa.com/community
Compiling
Before compiling Zarafa make sure you compile and install libical and libvmime.
You can compile the Zarafa sourcecode with the following commands:
./configure --disable-static --with-userscript-prefix=/etc/zarafa/userscripts --with-quotatemplate-prefix=/etc/zarafa/quotamails make make install
Patches
The Zarafa source code is licensed under the AGPLv3 license.
All patches can be send to developer@zarafa.com.
