Building Non-core Zorba Modules

Downloading source code for non-core modules

Currently, the Zorba team does not provide source downloads for the non-core modules. However, there is a simple CMake script inside Zorba which will allow you to check out these modules from source control easily. Note that this requires having the Subversion utility available on your system.

From your [ZORBA] directory, type

  cmake -Doutdir=../zorba_modules -Dmodname=NAME -P modules/DownloadModules.cmake

to download the particular module package NAME (see Non-core Modules for a complete list of module packages and their contents), or

  cmake -Doutdir=../zorba_modules -Dallmodules=1 -P modules/DownloadModules.cmake

to download all the modules. (On Windows, you will need to use backslashes instead of forward slashes in the above paths.)

This will place the downloaded module source code in the directory ../zorba_modules, which is where the Zorba build will look for them by default. If you wish to download them to some other location, you may do so; in that case, when you configure the Zorba build with CMake, provide the -DZORBA_MODULES_DIR=/full/path/to/modules argument.

Dependencies among Non-core Modules

Please note that some of these modules depend on other modules. Most notably, the EXPath http-client module (in the http-client module package) depends on the tidy module, which is in the data-converters module package. So, if you download the http-client package, you must also download the data-converters package (and ensure that libtidy is installed, as mentioned below).

Please see our module-interdependency graph for details.

Non-core Module Requirements

For many of the non-core modules, you need additional libraries. All such modules are not built if the library (and development headers) they require are not available. Here is a list of the libraries required by the current non-core modules packages:

In many cases you can find binary packages for these dependencies, which will be the quickest and easiest way to meet the requirements. We have provided links or instructions for downloading binary packages for these libraries below, along with some instructions that we have found when building these libraries from source.

Building IMAP CClient

Zorba provides email support using the CClient library part of the UW IMAP toolkit.

Unix/Linux/Mac OS X

Notes:

Use the following extra CMake arguments when building Zorba:

-D "CCLIENT_INCLUDE=path_to_imap-2007e\c-client"
-D CCLIENT_LIBRARY=path_to_imap-2007e\c-client\libc-client.a"

Here are some quick suggestions to build CClient on Linux:

For more detailed build instructions, please see the UW IMAP toolkit "Server Documentation" and the UW IMAP FAQs.

Windows

You must build the UW IMAP toolkit.

Use the following extra CMake arguments when building Zorba:

-D "CCLIENT_INCLUDE=path_to_imap-2007e\c-client"
-D "CCLIENT_LIBRARY=path_to_imap-2007e\c-client\release\cclient.lib"

Building Jansson

Zorba provides Json manipulation support using the Jansson Library (http://www.digip.org/jansson/).

Unix/Linux/Mac OS X

For Linux/Unix systems, download the Jansson library from http://www.digip.org/jansson/releases/. Then follow the instructions from http://www.digip.org/jansson/doc/2.0/gettingstarted.html#compiling-and-installing-jansson.

The source use GNU Autotools (autoconf, automake, libtool), so compiling and installing is extremely simple:

./configure
make
make check
make install

On Fedora starting with version 12, Jansson is also available as a package, so (as root) you can simply run:

yum install -y jansson-devel

Ubuntu packages are available from PPA of https://launchpad.net/~petri/+archive/ppa

Windows

For Windows please follow these steps:

There will be a new Jansson 2.0.1 release that will include the fixed described above.

Building ImageMagick

Zorba provides image manipulation support using the ImageMagick Library (http://www.imagemagick.org).

Unix/Linux/Mac OS X

For Linux/Unix systems, just use the package manager to install the magick++, magickwand, magickcore packages including the developer versions of these packages (that inlcude the header files).

On OSX, use macports to install imagemagick.

Windows

For Windows, just download the ImageMagick windows binary (Q8-windows-dll) and install it.

Libtidy

Windows

A binary installer for Tidy is available at: http://dev.int64.org/tidy.html

blog comments powered by Disqus