Mac, Apache, MySQL, Perl

Wer auf dem Mac Perl-Software für das Web entwickeln will, braucht eine Test- und Entwicklungsumgebung. Zunächst hatte ich mir dazu mit einer Linux-VM in Parallels Destop beholfen.

Nun wird Perl ja schon mit Mac OS X mitgeliefert. Und in Form von MAMP steht ein fertiges Paket für Web-Entwickler zur Verfügung, das bereits einen Apache mit PHP und eine MySQL-Datenbank liefert. Damit wäre eigentlich alles beisammen, was man braucht; weitere Perl-Module lassen sich ganz normal per cpan nachinstallieren. Bis auf eine Ausnahme.

Denn Probleme tauchen dann auf, wenn ein Modul mit der MAMP-Umgebung korrespondiert, allen voran DBD::mysql. Hier kam ich nie an den Fehlermeldungen von make vorbei, das vergeblich irgendwelche MySQL-Dateien suchte. Also zurück zur Linux-VM...

Abhilfe schuf kürzlich der Artikel MAMP 1.7 and DBD::mysql, der die genauen Schritte beschreibt, über die man zu einem funktionsfähigen Datenbankzugriff unter Perl gelangt:

Header-Dateien installieren

Für die benötigten MySQL-Build-Dateien benötigt man das vollständige MAMP-Paket, das derzeit als MAMP_1.7.1_intel_full.dmg zum Download bereitliegt. Sie werden in die vorhandene MAMP-Installation kopiert:

cp -r /Volumes/MAMP/MAMP/Library/include /Applications/MAMP/Library

MySQL-Client-Bibliotheken installieren

Hierzu ist der MAMP-Quellcode nötig; die Datei heißt MAMP_1.7_src.tar.gz. Das Archiv wird ausgepackt, anschließend ebenso der enthaltene MySQL-Tarball. Nach einem Wechsel in das entstandene MySQL-Verzeichnis wird ein Build angestoßen:

./configure --with-unix-socket-path=/Applications/MAMP/tmp/mysql/mysql.sock \
      --without-server \
      --prefix=/Applications/MAMP/Library
make -j2

Danach werden die Bibliotheken kopiert:

cp libmysql/.libs/*.dylib /Applications/MAMP/Library/lib/mysql

DBD::mysql installieren

Zunächst ist der Tarball von DBD::mysql herunterzuladen und zu entpacken. Dann kann der Build beginnen:

perl Makefile.PL \
      --CFLAGS="-I/Applications/MAMP/Library/include/mysql -Os -arch i386 -fno-common" \
      --libs="-L/Applications/MAMP/Library/lib/mysql -lmysqlclient -lz -lm" \
      --mysql_config="/Applications/MAMP/Library/bin/mysql_config"
make
make test
sudo make install

Das war's! Nun funktioniert auch direkt unter Mac OS X der Zugriff von Perl-Programmen auf eine MySQL-Datenbank.

Kommentar hinzufügen

Der Inhalt dieses Feldes wird nicht öffentlich zugänglich angezeigt.