Wenn Perl meldet, dass das Modul
        ../mysql/mysql.so nicht gefunden werden
        kann, dann liegt das wahrscheinlich daran, dass Perl die
        gemeinsame Bibliothek libmysqlclient.so
        nicht findet. Sie sollten dieses Problem auf eine der folgenden
        Weisen lösen können:
      
            Kompilieren Sie die Distribution
            DBD::mysql mit perl Makefile.PL
            -static -config statt mit perl
            Makefile.PL.
          
            Kopieren Sie libmysqlclient.so in das
            Verzeichnis, in dem sich Ihre anderen gemeinsamen
            Bibliotheken befinden (dies ist wahrscheinlich
            /usr/lib oder
            /lib).
          
            Ändern Sie die -L-Optionen zur
            Kompilierung von DBD::mysql so ab, dass
            die tatsächliche Position von
            libmysqlclient.so berücksichtigt wird.
          
            Unter Linux können Sie den Pfadnamen des Verzeichnisses, in
            dem sich libmysqlclient.so befindet,
            zur Datei /etc/ld.so.conf hinzufügen.
          
            Fügen Sie den Pfadnamen des Verzeichnisses, in dem sich
            libmysqlclient.so befindet, der
            Umgebungsvariablen LD_RUN_PATH hinzu.
            Einige Systeme verwenden stattdessen
            LD_LIBRARY_PATH.
          
        Beachten Sie, dass Sie möglicherweise auch die
        -L-Optionen ändern müssen, wenn auch andere
        Bibliotheken vom Linker nicht gefunden werden. Kann der Linker
        beispielsweise libc nicht finden, weil sich
        die Datei in /lib befindet, der
        Verknüpfungsbefehl aber -L/usr/lib angibt,
        dann ändern Sie die Option -L zu
        -L/lib oder fügen -L/lib zum
        vorhandenen Verknüpfungsbefehl hinzu.
      
        Wenn Sie die folgenden Fehler von DBD::mysql
        erhalten, verwenden Sie wahrscheinlich gcc
        (oder eine alte Binärdatei, die mit gcc
        kompiliert wurde):
      
/usr/bin/perl: can't resolve symbol '__moddi3' /usr/bin/perl: can't resolve symbol '__divdi3'
        Fügen Sie -L/usr/lib/gcc-lib/... -lgcc zum
        Verknüpfungsbefehl hinzu, wenn die Bibliothek
        mysql.so erstellt wird (überprüfen Sie
        die Ausgabe von make bezüglich
        mysql.so, wenn Sie den Perl-Client
        kompilieren). Die -L-Option sollte den
        Pfadnamen des Verzeichnisses angeben, in dem
        libgcc.a auf Ihrem System gespeichert ist.
      
Eine andere Ursache dieses Problems könnte sein, dass nicht sowohl Perl als auch MySQL mit gcc kompiliert wurden. In diesem Fall können Sie die Nichtübereinstimmung beheben, indem Sie beide mit gcc kompilieren.
        Wenn Sie die Tests ausführen, gibt
        DBD::mysql unter Umständen die folgende
        Fehlermeldung aus:
      
t/00base............install_driver(mysql) failed: Can't load '../blib/arch/auto/DBD/mysql/mysql.so' for module DBD::mysql: ../blib/arch/auto/DBD/mysql/mysql.so: undefined symbol: uncompress at /usr/lib/perl5/5.00503/i586-linux/DynaLoader.pm line 169.
        Dies bedeutet, dass Sie die Komprimierungsbibliothek
        -lz in der Verknüpfungszeile hinzufügen
        müssen. Dies können Sie tun, indem Sie in der Datei
        lib/DBD/mysql/Install.pm die Zeile
      
$sysliblist .= " -lm";
wie folgt ändern:
$sysliblist .= " -lm -lz";
Danach müssen Sie make realclean ausführen und nachfolgend von vorne mit der Installation beginnen.
        Wenn Sie DBI unter SCO installieren wollen, müssen Sie
        Makefile in
        DBI-xxx und allen Unterverzeichnissen
        bearbeiten. Beachten Sie, dass das Folgende
        gcc 2.95.2 oder höher voraussetzt:
      
OLD: NEW: CC = cc CC = gcc CCCDLFLAGS = -KPIC -W1,-Bexport CCCDLFLAGS = -fpic CCDLFLAGS = -wl,-Bexport CCDLFLAGS = LD = ld LD = gcc -G -fpic LDDLFLAGS = -G -L/usr/local/lib LDDLFLAGS = -L/usr/local/lib LDFLAGS = -belf -L/usr/local/lib LDFLAGS = -L/usr/local/lib LD = ld LD = gcc -G -fpic OPTIMISE = -Od OPTIMISE = -O1 OLD: CCCFLAGS = -belf -dy -w0 -U M_XENIX -DPERL_SCO5 -I/usr/local/include NEW: CCFLAGS = -U M_XENIX -DPERL_SCO5 -I/usr/local/include
        Diese Änderungen sind erforderlich, weil der Perl-Dynaloader
        die DBI-Module nicht lädt, wenn diese mit
        icc oder cc kompiliert
        wurden.
      
        Wollen Sie das Perl-Modul auf einem System verwenden, das keine
        dynamischen Verknüpfungen unterstützt (wie z. B. SCO), dann
        können Sie eine statische Perl-Version erzeugen, die
        DBI und DBD::mysql
        enthält. Dies funktioniert so, dass Sie eine Perl-Version mit
        verknüpftem DBI-Code erzeugen und diese
        über Ihre aktuelle Perl-Installation installieren. Dieses
        verwenden Sie dann zur Erstellung einer Perl-Version, die
        zusätzlich den verknüpften DBD-Code
        beinhaltet und die Sie dann installieren.
      
Unter SCO müssen Sie zuvor die folgenden Umgebungsvariablen einstellen:
LD_LIBRARY_PATH=/lib:/usr/lib:/usr/local/lib:/usr/progressive/lib
Oder:
LD_LIBRARY_PATH=/usr/lib:/lib:/usr/local/lib:/usr/ccs/lib:\
    /usr/progressive/lib:/usr/skunk/lib
LIBPATH=/usr/lib:/lib:/usr/local/lib:/usr/ccs/lib:\
    /usr/progressive/lib:/usr/skunk/lib
MANPATH=scohelp:/usr/man:/usr/local1/man:/usr/local/man:\
    /usr/skunk/man:
        Sie erstellen zunächst eine Perl-Version, die ein statisch
        verknüpftes DBI-Modul enthält. Dies tun Sie
        durch Ausführen der folgenden Befehle in dem Verzeichnis, in
        dem Ihre DBI-Distribution gespeichert ist:
      
shell>perl Makefile.PL -static -configshell>makeshell>make installshell>make perl
Danach müssen Sie das neue Perl installieren. Die Ausgabe von make perl gibt den exakten make-Befehl an, den Sie ausführen müssen, um die Installation durchzuführen. Unter SCO heißt der Befehl make -f Makefile.aperl inst_perl MAP_TARGET=perl.
        Als Nächstes verwenden Sie das gerade erstellte Perl zur
        Erstellung eines anderen Perl, welches auch ein statisch
        verknüpftes DBD::mysql enthält. Hierzu
        führen Sie die folgenden Befehle in dem Verzeichnis aus, in dem
        sich Ihre DBD::mysql-Distribution befindet:
      
shell>perl Makefile.PL -static -configshell>makeshell>make installshell>make perl
Abschließend sollten Sie dieses neue Perl installieren. Auch hier zeigt die Ausgabe von make perl den zu verwendenden Befehl an.
Dies ist eine Übersetzung des MySQL-Referenzhandbuchs, das sich auf dev.mysql.com befindet. Das ursprüngliche Referenzhandbuch ist auf Englisch, und diese Übersetzung ist nicht notwendigerweise so aktuell wie die englische Ausgabe. Das vorliegende deutschsprachige Handbuch behandelt MySQL bis zur Version 5.1.

