Chapter 1. Installation

Table of Contents

Requirements
RDBMS
Web server
PHP with PDO
eZ Components
Graphviz
ImageMagick
Additional requirements for the development version
Smarty
R&OS pdf class
smarty-gettext
Installation
Installation layout
eZ Components
Additional steps for the development version
The database

Installing phpaga is not a fully automated process, there are a few simple steps that you must go through. If you are upgrading from a previous version you might be interested in the chapter Upgrading phpaga.

For a fresh install you need to do the following steps:

This document will guide you through the installation and give you some help. If you don't know how to install PHP or how to compile it with support for the packages listed under "requirements", then refer to the PHP website and the official PHP Documentation.

Requirements

The following software packages have to be installed on your server in order to use phpaga. The version numbers mentioned below are known to work. Refer to each package's website for installation instructions.

RDBMS

Currently PostgreSQL and MySQL are supported. If you are unsure about which to pick go for PostgreSQL - phpaga is developed and tested under PostgreSQL, and database-related parts are better tested with that platform.

PostgreSQL

7.4 - 8.2.4

http://www.postgresql.org/

MySQL

4.1.16, 5.1.2

http://www.mysql.com/

Web server

phpaga should work with any PHP-enabled web server. It has been tested with Apache (both 1.3.x and 2.x).

http://httpd.apache.org/

PHP with PDO

>= 5.2.0

PHP with support for PDO and the PDO driver(s) for PostgreSQL (or MySQL), gettext and gd. Visit http://www.php.net/ for more information on how to compile and install PHP, and http://www.php.net/gettext for information about PHP's gettext support. For the various supported languages to actually work, make sure you have the corresponding locales installed. Keep in mind that after installing a new locale you will need to restart the web server.

The php.ini settings register_globals and magic_quotes_gpc can both be Off. In case magic_quotes_gpc is On all escaping slashes in $_REQUEST, $_GET and $_POST will automatically be removed by phpaga.

The amount of memory available to PHP is defined by the memory_limit setting in php.ini. This value defaults to 8M, but you might need to raise it 16M or 32M if you encounter error messages like "*Fatal error*: Allowed memory size of 8388608 bytes exhausted (tried to allocate 65211 bytes) in *<some filename>* on line *<some line number>*". etc/config.local.php also provides the possibility to change this setting.

http://www.php.net/

eZ Components

2007.1.1

phpaga's chart displaying routines are based on ez Components.

http://ezcomponents.org/

Graphviz

2.2.1

This package is optional. If you would like to see project relationship graphs you will need to install Graphviz and set the related option "Enable Graphviz" under the sitewide configuration to "Yes". Note that phpaga will work nicely without this package (provided you set the option "Enable Graphviz" to "No") - you will just be missing the relationship graphs.

http://www.graphviz.org/

ImageMagick

6.0.6, 6.2.4

ImageMagick's "convert" is used to create preview thumbnails for uploaded files.

http://www.imagemagick.org/