Preface

This document is part of the LiveSupport project, Copyright © 2004 Media Development Loan Fund, under the GNU GPL.

Scope

This document describes how to set up the LiveSupport development environment.

Introduction

LiveSupport uses a well-defined development environment. Most of the LiveSupport-specific files are included in the version control system, but some preparation and setup has to be made on system used to develop LiveSupport as well.

Steps

The following steps needed to be taken for setting up the LiveSupport development environment.

Install development tools

Install all the tools needed for the development of LiveSupport. Please see the development tools document for a list of tools needed.

Set up additional system resources

The LiveSupport development environment uses some system resources, that are not reasonable to include in the environment itself. One such resource is an ODBC datasource to a test database. This database has to be accessible for executing the test suites and applications within the LiveSupport development environment.

First, LiveSupport expects a PostgreSQL database, and an ODBC Data Source accessible to it through unixODBC. Please refer to the documentation of these tools to set them up.

LiveSupport expects an ODBC Data Source with the following parameters:
This data source should point to a PostgreSQL instance. Only one developer at the time should access this datasource, as the test suites regularly create and destroy database tables.

Second, LiveSupport expects: Please, check settings in var/conf.php files in both storageServer and archiveServer modules and create two symlinks with name corresponding to 'URL configuration' part of var/conf.php files - example for default values:

Check out the sources

The LiveSupport development directory tree can be accessed via anonymous CVS, using the CVSROOT :pserver:anonymous@netfinity-5.mdlf.org:/home/cvs. The repository is called livesupport, thus the following CVS command would check out the development tree:

cvs -z3 -d
:pserver:anonymous@netfinity-5.mdlf.org:/home/cvs checkout livesupport

This will check out and create the LiveSupport development directory structure.

Set up tools

LiveSupport uses widely available tools for development, like the GNU C++ compiler, but also uses more specific tools. As these tools, or the exact versions of these tools are not expected to be installed on the development system, the LiveSupport development environment contains them. The tools are installed into the livesupport/usr directory, as described in the directory structure document.

Moreover, some components in livesupport have to be set up prior to compilation, for example running autoconf or similar configuration programs. This ensures that the components compile fine on the development system.

To achieve all these goals, invoke the target setup in the main Makefile, at the root of the LiveSupport directory structure, by issuing the following command in the livesupport directory:

cd livesupport
make setup

The execution of this command will take a while, as all the supporting libraries and tools are compiled and installed to the livesupport/usr directory. Please note that nothing is installed outside of the LiveSupport directory structure.

Ready to roll

With the above steps completed, the LiveSupport modules and products are ready to be compiled and developed further. Have fun!