Home | Download/Install | Documentation | Packages | Screenshots | News | Forum/Mailing-lists | Contact | GForge
The OpenAlea project intends to facilitate the creation of new packages and the reuse of existing code and libraries.
OpenAlea can be view as a set of autonomous or dependant packages. The package framework has been guided with the following objectives.
We define the minimal requirements for an OpenAlea package in term of system installation (Nota : we define other requirement in term of license, documentation…).
openalea
namespace,The build and Install process is composed by different steps:
We develop in that context different tools to compile Python/C++ packages and we define rules to install python modules and shared C++ libraries on any system.
OpenAlea.Deploy is an extension of setuptools and allows to install shared binary library in a egg. OpenAlea.SConsX is able to configure and build system dependant libraries and resources on different platform
This set of tools are provided to facilitate the creation of packages, but are not mandatory. A package can use other tools, but it has to respect OpenAlea package installation rules.
The starter package can be used as a base structure for any package.
A standard OpenAlea install will consist of:
If a package need compilation (if it include C++ library and wrappers), we highly recommend to use the SCons portable build tool.
We develop the SConsX which extends SCons functionality and especially for building boost.python package. It tends to resolve common configuration problems on different platform.
OpenAlea packages contain Python modules. We recommend to use the setuptools python library to manage installation process.
We provide OpenAlea.Deploy which extends Setuptools. It allows to call scons directly from the setup.py
script and install external data and shared libraries.