|
Le Guide d'installation d'Apache
06 août 2001
Installation des librairies
Nous vous proposons d'installer quatre librairies sur votre
système Linux afin d'enrichir PHP de fonctionnalités supplémentaires
: la gestion de la mémoire partagée (shared memory), la génération
d'images (aux formats JPG et PNG, ce dernier remplaçant GIF pour des
questions de droits d'auteur), la génération de textes utilisant
des polices True Type et enfin la génération de fichiers PDF.
MM
MM est une librairie qui permet une utilisation simplifiée
de la mémoire partagée (ou shared memory) utilisée lors
de la communication inter-processus (ou IPC, Inter Processus Communication)
sur les plates-formes de type Unix. La raison pour laquelle il est intéressant
d'installer cette librairie sur votre système est lors de l'utilisation
des sessions avec PHP 4. En effet, Tobias Ratschiller, dans son article sur
la gestion des sessions (l'article ici) recommende la librairie MM : "si
vous souhaitez des performances élevées, le module mm est une
alternative très intéressante, car il permet le stockage des données
de session en mémoire partagée (NDR : plutôt que dans un
fichier) et n'est donc pas limité par les perfornances du sous-système
disque".
Pour installer MM, décompactez les sources :
# tar xvfz mm-1.1.3.tar.gz
Rendez-vous dans le répertoire qui vient d'être créé :
# cd mm-1.1.3
Préparez la configuration, compilez la librairie et installez-là
:
# ./configure --prefix=/usr/local
# make
# make install
FreeType
La librairie Freetype
apporte à Linux le support des polices True Type de Windows. Le premier
champ d'application possible est leur utilisation sous X-Window. L'autre possibilité,
relayée par la librairie GD, est la génération d'images
comportant un texte utilisant des polices True Type.
Pour installer cette librairie, décompactez tout d'abord les sources
:
# tar xvfz freetype-2.0.5.tar.gz
Rendez-vous dans le répertoire qui vient d'être créé
:
# cd freetype-2.0.5
Préparez la configuration :
# make setup
Par défaut, les composants de la librairie vont être placés
dans des sous-répertoires du dossier /usr/local. Vous pouvez changer
cela, par exemple installer dans /usr, en tapant à la place :
# make setup CFG="--prefix=/usr"
Ceci fait, lancez la compilation et l'installation :
# make
# make install
La librairie FreeType est une librairie dynamique, c'est-à-dire qu'elle
est indépendante des applications qui l'utilisent (son code n'est pas
intégré aux applications) et n'a besoin d'exister qu'une seule
fois en mémoire. Une librairie dynamique est comparable aux DLLs de Windows.
Pour la mettre à disposition du système, il faut reconstruire
la liste des librairies dynamiques par la commande suivante :
# ldconfig
Validez ensuite l'écriture des données en mémoire tampon
sur le disque par la commande sync. Sans cela, le cache des librairies
dynamiques n'est pas mis convenablement à jour. Pour vérifier
la disponibilité effective de Free Type, tapez la commande suivante :
# ldconfig -v | grep freetype
Le résultat devrait être libfreetype.so.6 -> libfreetype.so.6.1.0.
GD
Pour ajouter le support de la génération dynamique
d'images à PHP, nous allons utiliser la librairie GD.
La dernière version stable est la 1.8.4 mais celle-ci ne fonctionne pas
correctement avec FreeType du fait qu'elle ne supporte par les polices True
Type de type 2. Il est donc nécesaire d'utiliser la version 2.0.1 qui,
bien qu'au stade de bêta, ne devrait pas poser de problèmes particuliers.
Ajoutons qu'afin de compiler cette librairie sans souci, il est nécessaire
que les librairies libpng,
libjpeg-6b et zlib
soient préalablement installées. Pour ajouter le support du format
TIFF dans PHP, je vous recommande si ce n'est déjà fait d'installer
libtiff. Si vous rencontrez
un quelconque problème, n'hésitez pas à poster un message
dans le forum.
Passons maintenant à l'installation de la librairie. Décompactez
les sources et rendez-vous dans le répertoire créé :
# tar xvfz gd-2.0.1.tar.gz
# cd gd-2.0.1
GD dans sa version 2.0.1 va chercher par défaut à utiliser la
librairie FreeType donc aucune configuration n'est nécessaire de ce côté.
Il est par contre nécessaire d'ajuster le chemin de recherche des fichiers
d'en-tête (.h). Pour cela, éditer le fichier Makefile, recherchez
la ligne commençant par INCLUDEDIRS et modifiez -I/usr/include/freetype2
en -I/usr/local/include/freetype2. Il faut ensuite modifier l'emplacement
d'installation de la librairie. Pour cela, rechercher la ligne INSTALL_LIB
et modifiez le répertoire /usr/lib vers /usr/local/lib.
Faites de même pour la ligne INSTALL_INCLUDE et changez la valeur
vers /usr/local/include.
Vous pouvez maintenant lancer la compilation et l'installation :
# make install
Comme pour FreeType, vous devez mettre à jour la base des librairies
dynamiques :
# ldconfig
# sync
Vérifiez la prise en compte de GD :
# ldconfig -v | grep gd
Vous devriez voir apparaître libgd.so.2.0.0 -> libgd.so.2.0.0
dans le résultat de la commande.
PDFLib
La librairie PDFLib
permet à PHP de générer des fichiers PDF à la volée.
Il est dès lors possible de proposer aux visiteurs du site de sauvegarder
un article ou le résultat d'une requête sous la forme d'un document
PDF et donc de profiter des avantages qu'offre ce format.
Décompactez les sources et placez-vous dans le répertoire de travail
:
# tar xvfz pdflib-4.0.1.tar.gz
# cd pdflib-4.0.1
Lancez la configuration en fonction de votre plate-forme, puis la compilation
:
# ./configure
# make
Enfin, passez à l'installation :
# make install
Comme FreeType, la librairie et ses composants seront placés dans des
sous-répertoires de /usr/local.
Il faut enfin mettre à jour la base des librairies dynamiques comme pour
les deux librairies précédentes :
# ldconfig
# sync
|