Chapter 2.  Installation

Table of Contents

MesoRD Dependencies
Installing a Binary Distribution
Building MesoRD from Source on Unix
Working the GNU AutoTools
Building MesoRD from Source on OS X
Building MesoRD from Source on Windows
Building MesoRD from Source using Visual Studio 2005
Building MesoRD from Source using Visual Studio 6.0™.
Building a Distribution
Generating the Documentation
A Note on C++ Compilers
Source from SVN

MesoRD Dependencies

MesoRD depends on libSBML, which in turn requires an xml library: either Xerces-C++, Expat or xml2. libSBML is supported on Unix/Mac OS X™ as well as on Windows™. Binary Windows™ libraries of libSBML are provided by the SBML developers The Windows™ distribution of libSBML currently ships with precompiled binaries of either Xerces-C++, Expat or xml2.

MesoRD contains a visualiser which requires OpenGL, GLU and, on X-window systems, GLX. On Unices, building the visualiser is optional; on Windows™ platforms, it is required. For Mac OS X™ this means that you need to install the X11 package to build MesoRD with visualiser support. The visualiser does however not introduce any new critical dependencies on any system, since Windows™ ships with OpenGL as well as GLU. If you are on a Windows™ platform, you may want to make sure that you have performance enhanced drivers for your video card installed. Such drivers are typically available from the particular video card vendor.

Table 2.1.  MesoRD Dependencies

Package Version Description
libsbml >= 4.1.0

The libsbml library allows for easy parsing and validation of SBML files. Note that versions prior to 4.1.* will not work.

OpenGL N/A[a]

The open graphics library which provides easy-to-use functions for three-dimensional graphics. NetBSD users may want to avoid the XFree OpenGL in favour of for instance Mesa.

Pre-emptive threads implementation N/A

MesoRD requires a pre-emptive threads implementation in order to run the different components concurrently. Note that MesoRD is multithreaded, irrespective of the number of processors on the host. On Unices the threads implementation should be POSIX compliant[b]. On Windows™, MesoRD will make use of native NT threads. The thread requirement may limit the number of Windows™ versions that can be used for running MesoRD.

[a] On Unices with the X windowing system you may choose between the implementation that comes with the X server and stand-alone alternatives such as Mesa. There may be issues with some version combinations: on NetBSD, we had strange problems when linking to the XFree86 implementation of OpenGL, while the Mesa implementation worked without any problems at all. On Windows™, you should use performance enhanced drivers from your video card vendor, provided such drivers exist.

[b] Note however that the GNU pth library will not do, as it is not pre-emptive. We have been using unproven-pthreads, which is a hacked version of MIT Pthreads, from the NetBSD pkgsrc tree.

Table 2.2.  To build the MesoRD documentation

Package Version Description
docbook NA

The MesoRD documentation is written in docbook.