php kompilieren:undefined reference to `compress'

Von: , Frage gestellt am Do, 27. Jun 2002

beim compilieren (debian potato)bekomme ich den u.g. fehler.

bei den known bugs der php-reference steht dazu:
* Error: "undefined reference to `uncompress'" Die Client-Bibliothek wurde mit der Unterstützung für ein komprimiertes Client-/Server-Protokoll kompiliert. Um den Fehler zu beheben, müssen Sie -lz als letztes angeben, wenn Sie gegen -lmysqlclient linken.

öööööhm... ja. was sagt mir das? wo muss ich was angeben? bitte uebersetze mir das einer...

danke, gruss.

ps: ich habe den thread vor tagen schon in php gestartet, dort aber keine befriedigende antwort erhalten. villeicht dort die antworten unterbringen. danke gruss

/usr/local/mysql-3.23.47-pc-linux-gnu-i686//lib/libmysqlclient.a(my_compress.o): In function `my_uncompress':
my_compress.o(.text+0x9a): undefined reference to `uncompress'
/usr/local/mysql-3.23.47-pc-linux-gnu-i686//lib/libmysqlclient.a(my_compress.o): In function `my_compress_alloc':
my_compress.o(.text+0x12a): undefined reference to `compress'
collect2: ld returned 1 exit status
make: *** [php] Fehler 1

3 Antworten zu dieser Frage

  1. Antwort von nach einer Stunde 0 hilfreich
    Re: php kompilieren:undefined reference to `compre

    Hallo,

    undefined reference to bla

    steht dafür, dass Du eine Funktion "bla" zwar gerne benutzen möchtest, diese aber bisher nie definiert wurde.

    Ich kenne mich mit PHP null,gar nicht aus, aber in anderen Sprachen (C/C++) gibts z.B. sowas wie Prototypen, damit das nicht passiert.

    Gruß

    Fritze

  2. Antwort von nach 18 Stunden 0 hilfreich
    Re: php kompilieren:undefined reference to `compre

    Hallo dog.je,

    poste doch mal bitte deinen ./configure Aufruf. Ich schätze mal, dass dort dein Problem zu suchen ist.

    /usr/local/mysql-3.23.47-pc-linux-gnu-i686//lib/libmysqlclient.a(my_compress.o):
    In function `my_uncompress':
    my_compress.o(.text+0x9a): undefined reference to `uncompress'
    /usr/local/mysql-3.23.47-pc-linux-gnu-i686//lib/libmysqlclient.a(my_compress.o):
    In function `my_compress_alloc':
    my_compress.o(.text+0x12a): undefined reference to `compress'
    collect2: ld returned 1 exit status
    make: *** [php] Fehler 1
    

    Wenn ich mir das so anschaue, dann fällt mir das folgendes auf:
    :/usr/local/mysql-3.23.47-pc-linux-gnu-i386//lib/libmysqlclient.a

    Und dabei besonders die doppelten /. Das --with-mysql beim Konfigurieren darf am Ende des MySQL-Pfads kein / haben, sollte also ungefähr so aussehen
    --with-mysql=/usr/local/mysql
    Das Gleiche gilt natürlich auch für den Apachepfad.

    Grüße
    Martin

    • Antwort von nach 18 Stunden 0 hilfreich
      Re^2: php kompilieren:undefined reference to `comp

      Hallo dog.je,

      poste doch mal bitte deinen ./configure Aufruf. Ich schätze
      mal, dass dort dein Problem zu suchen ist.
      naja, ich habe in einer mailingliste den hinweis gefunden, dass man wenn dieser fehler auftritt zusaetzlich mit --with-zlib konfigurieren muss. dann kompiliert das.

      keine ahnung, ob/wann doppelslashes probleme aufwerfen, ist mir bisher noch nciht aufgefallen...

Keine passende Antwort gefunden? Jetzt eigene Frage stellen!