Chapitre 3. Installation sous Ubuntu Edgy Eft

Table des matières

3.1. Pré-requis
3.2. PostgreSQL
3.2.1. Téléchargement et configuration
3.2.2. Test de régression (optionnel)
3.2.3. Installation
3.3. Geos et Proj
3.4. PostGIS

Etant un petit utilisateur sans prétention de GNU/Linux, j'expose ici la façon d'installer nos outils pour Ubuntu Edgy Eft

3.1. Pré-requis

En tant que root

apt-get update
apt-get install gcc-4.1 g++-4.1 flex bison libreadline5-dev libssl-dev zlib1g-dev gettext gettext-base

avec

  1. gcc-4.1,g++-4.1,make: pour pouvoir bénéficier d'un environnement de compilation complet. On s'assurera ici d'avoir au moins la version 3.81 de make (commande: make --version);

  2. flex,bison: si nous devions travailler avec les dépôts CVS de postgresql;

  3. gettext,gettext-base: pour avoir le support de langue en français (NLS: Native Support Language)

  4. zlib1g-dev: la librairie zlib est nécessaire si vous voulez pouvoir faire des sauvegarde de vos données par la suite (pour l'utilitaire pg_dump de PostgreSQL)

  5. libreadline5-dev: la librairie readline est nécessaire pour pouvoir bénéficier de l'historique des commandes, de l'édition de la ligne en cours) avec l'utiltaire psql de PostgreSQL.

NOTES AUX UTILISATEURS UBUNTU

3.2. PostgreSQL

Nous commencerons par télécharger les sources de ce dernier

wget ftp://ftp.fr.postgresql.org/v8.2.0/postgresql-8.2.0.tar.bz2

que l'on décompresse ensuite

tar xvjf postgresql-8.2.0.tar.bz2

Commençons donc par configurer PostgreSQL avec les

cd postgresql-8.2.0
 CC=gcc-4.1 CXX=g++-4.1 ./configure --enable-nls=fr --with-openssl

Il ne nous reste plus qu'à le compiler et à l'installer

make
make install

Note

  1. Par défaut je rappelle que PostgreSQL a /usr/local/pgsql comme répertoire d'installation si l'on ne précise pas le répertoire d'installation dans la commande ./configure avec l'option --prefix.

  2. Pour obtenir un descriptif possible des diverses options, je rappelle que celui-ci peut-être obtenu en faisant ./configure --help

N'oublions pas comme à notre habitude de compiler/installer les modules de contribution

cd contrib
make
make install

3.2.1. Téléchargement et configuration

Nous commencerons par télécharger les sources de ce dernier

wget ftp://ftp.fr.postgresql.org/v8.2.0/postgresql-8.2.0.tar.bz2

que l'on décompresse ensuite

tar xvjf postgresql-8.2.0.tar.bz2

Commençons donc par configurer PostgreSQL avec les

cd postgresql-8.2.0
 CC=gcc-4.1 CXX=g++-4.1 ./configure --enable-nls=fr --with-openssl

Il ne nous reste plus qu'à le compiler en faisant

make

3.2.2. Test de régression (optionnel)

Pour pouvoir réaliser les tests de régression il est nécessaire de créer un utilisateur postgres

root@jenna-edgy:/mnt/sources/postgresql-8.2.0# adduser postgres
Ajout de l'utilisateur « postgres »...
Ajout du nouveau groupe « postgres » (1001).
Ajout du nouvel utilisateur « postgres » (1001) avec le groupe « postgres ».
Création du répertoire personnel « /home/postgres ».
Copie des fichiers depuis « /etc/skel »
Enter new UNIX password:
Retype new UNIX password:
passwd : le mot de passe a été mis à jour avec succès
Modification des informations relatives à l'utilisateur postgres
Entrez la nouvelle valeur ou « Entrée » pour conserver la valeur proposée
        Nom complet []:
        No de bureau []:
        Téléphone professionnel []:
        Téléphone personnel []:
        Autre []:
Ces informations sont-elles correctes [o/N] ? o

Rendons cet utilisateur propriétaire du répertoire des sources

root@jenna-edgy:/mnt/sources/postgresql-8.2.0#chown postgres:postgres/mnt/sources/postgresql-8.2.0 -R

Connectons-nous maintenant en tant que utilisateur postgres et lançons les test de régression

su postgres
make check

qui renverra en affichage

============== removing existing temp installation    ==============
============== creating temporary installation        ==============
============== initializing database system           ==============
============== starting postmaster                    ==============
running on port 55432 with pid 26379
============== creating database "regression"         ==============
CREATE DATABASE
ALTER DATABASE
============== installing plpgsql                     ==============
CREATE LANGUAGE
.                .               .
.                .               .
.                .               .
.                .               .
test stats                ... ok
test tablespace           ... ok
============== shutting down postmaster               ==============
server stopped

=======================
 All 103 tests passed.
=======================

3.2.3. Installation

Procédons maintenant à l'installation

make install

Note

  1. Par défaut je rappelle que PostgreSQL a /usr/local/pgsql comme répertoire d'installation si l'on ne précise pas le répertoire d'installation dans la commande ./configure avec l'opti on --prefix.

  2. Pour obtenir un descriptif possible des diverses options, je rappelle que celui-ci peut-être obtenu en faisant ./configure --help

N'oublions pas comme à notre habitude de compiler/installer les modules de contribution

cd contrib
make
make install

Pour finir, nous ferons

  1. pour que nos librairies soient accessibles

    echo /usr/local/pgsql/lib >> /etc/ld.so/conf
  2. pour que les outils de PostgreSQL soient accessibles, il suffit d'ouvrir /etc/bash.bashrc et d'ajouter les lignes suivantes à la fin de ce fichier et afin de renseigner le répertoire qui contiendra nos données (cd PGDATA)

    export PATH="/usr/local/pgsql/bin:$PATH"
    export PGDATA="/usr/local/pgsql/data"

3.3. Geos et Proj

C'est une installation des plus classiques que je détaille par ici

wget http://geos.refractions.net/geos-3.0.0rc3.tar.bz2
tar xjf geos-3.0.0rc3.tar.bz2
cd geos-3.0.0rc3
CC=gcc-4.1 CXX=g++-4.1 ./configure && make && make install

de même pour Proj

wget ftp://ftp.remotesensing.org/proj/proj-4.5.0.tar.gz
tar xzf proj-4.5.0.tar.gz
cd proj-4.5.0
CC=gcc-4.1 CXX=g++-4.1 ./configure && make && make install

puis

echo /usr/local/lib >> /etc/ld.so/conf
ldconfig

3.4. PostGIS

Si vous n'avez pas encore effectué la mise à jour de votre variable PATH dans /etc/bash.bashrc [section 2.3], tapez la commande suivante pour rendre temporairement accessibles les binaires de PostgreSQL

export PATH="/usr/local/pgsql/bin:$PATH"
wget http://postgis.refractions.net/download/postgis-1.2.0.tar.gz
tar xzf postgis-1.2.0.tar.gz
cd postgis-1.2.0
CC=gcc-4.1 CXX=g++-4.1 ./configure && make && make install