Anleitung: PHP Subversion Extension mit PECL

Gepostet von am Mai 19, 2009 in Anleitung, Linux / Unix | Keine Kommentare

Um sich einen Über­blick zu ver­schaf­fen, was diese Biblio­thek leis­ten kann, gibt es auf http://php.oregonstate.edu/manual/en/ref.svn.php eine Refe­renz. In gro­ben zügen kann man diese Exten­sion für das Ver­si­ons­kon­troll­sys­tem SVN auf PHP Basis nut­zen. Hier gibt es eine Anlei­tung wie man diese Biblio­thek auf einem Debian/Ubuntu Sys­tem instal­lie­ren und nut­zen kann.

sudo apt-get -y install libsvn-dev php-pear php5-dev
sudo apt-get -y install build-essential

Das Paket libsvn-dev stellt die nöti­gen Sour­ces bereit die kom­pi­liert wer­den müs­sen. Die Pakete php-pear und php5-dev sind für den Ein­satz von PECL nötig um die auto­ma­ti­sche Instal­la­tion zu rea­li­sie­ren. Letz­te­res Paket ist ein c - Com­pi­ler um die zuvor genann­ten Sour­ces bauen zu können.

pear upgrade PEAR
pecl install -f svn

Bei man­chen Pake­ten emp­fiehlt es sich, vor der eigent­li­chen Instal­la­tion, ein PEAR Upgrade durch­zu­füh­ren. Der PECL-Befehl, wel­cher mit php5-dev mit­ge­lie­fert wird, führt dann ein Script aus, um die SVN Exten­sion zu kom­pi­lie­ren und in die lokale PHP-Version zu inte­grie­ren. Zum Schluss wird in der jewei­li­gen php.ini ein Ein­trag fäl­lig, um die SVN Exten­sion letzt­end­lich auch nut­zen zu können.

extension=svn.so

Nun lässt sich über PHP diese Biblio­thek im vol­len Umfang nut­zen. Hier noch ein Beispiel:

<?php
echo svn_update(realpath('working-copy'));
?>

Diese Exten­sion ist bis ein­schließ­lich PHP6 nutz­bar. Genaue­res erfährt man über die Entwicklerseite.

[Update - 27. August 2009]

Im laufe der Kom­pe­lie­rung der SVN Exten­sion kön­nen, vor allem auf einem recht jun­gen und fri­schem Sys­tem, einige Feh­ler auf­tre­ten, wel­che durch feh­lende Pakete resul­tie­ren. Hier­bei kann unter ande­rem nach dem Paket -sasl2 und -lneon-gnutls gefragt wer­den. Um diese Pakete nach­zu­in­stal­lie­ren sind jede­glich fol­gende Schritte nötig:

apt-cache search sasl2
sudo apt-get install libsasl2-dev libsasl2-modules-ldap

Und für das zweite Paket:

apt-cache search neon gnutls
sudo apt-get install libneon27-gnutls-dev

Danach sollte der pecl-Befehl erneut aus­ge­führt wer­den und mit einem „Build pro­cess com­ple­ted suc­cess­fully” enden.

Einen Kommentar schreiben