Installer une extension PHP à la mano
De temps à autre il est nécessaire soit d'avoir accès à la dernière version d'une extension PECL de PHP, soit simplement d'en disposer parce que notre distribution préférée a jugé utile de supprimer le paquet.
Dans mon cas, il s'agit de l'extension permettant d'accéder nativement à SQLite 2.0 qui a disparu de la Debian Wheezy. Pas de panique, c'est relativement simple à corriger.
Première étape, installer ce qu'il nous faut pour télécharger et compiler les extensions PECL.
gastonsudo aptitude install php5-dev php-pearinstallation des outils nécessaires à la compilation
Ceci fait, nous allons récupérer le code source de notre extension
gastonpecl download sqlitegastontar -zxvf sqlite*.tar.gzgastoncd sqlite*récupération du tarball de l'extension
Après c'est la procédure classique propre à toute extensions PHP, PECL ou pas
gastonphpizegaston./configuregastonmake -j 4gastonsudo make installphpisation
phpize est une commande fournie par php-dev qui va configurer tous les paramètres permettant la compilation et le lien avec les librairies PHP. Le reste est du grand classique de compilation sous UNIX. Notez le -j4 qui permet de lancer 4 compilations en parallèle.
Une fois la compilation et l'installation achevée, il reste à déclarer l'extention. Pour cela il faut déjà la trouver. Lorsque l'on a invoqué make install, la commande nous a donné un indice en indiquant la copie de /usr/lib/php5/20100525/sqlite.so. C'est donc ce chemin que l'on va déclarer dans la configuration de PHP en utilisant le même formalisme que pour les extensions installées par le gestionnaire de paquets.
gastonecho "extension=/usr/lib/php5/20100525/sqlite.so" > /etc/php5/conf.d/20-sqlite.inidéclaration de l'extension
Maintenant il ne reste plus qu'à redémarrer Apache pour bénéficier de l'extension.