Anzeige:
Ergebnis 1 bis 5 von 5

Thema: heftgier Ärger mit libpng

  1. #1
    Registrierter Benutzer
    Registriert seit
    08.07.2002
    Beiträge
    719

    heftgier Ärger mit libpng

    Ich schreibe gerade ein Programm, das Qt und SDL mit SDL_image verwendet. Bisher lief alles problemlos, aber seitdem ich SDL_image eingebaut habe, kriege ich nach dem kompilieren, wenn ich das Programm ausführen möchte, einen Segfault, und zwar mit folgender Begründung:

    libpng warning: Application was compiled with png.h from libpng-1.2.1
    libpng warning: Application is running with png.c from libpng-1.0.12
    libpng error: Incompatible libpng version in application and library

    Das kenne ich schon, so hatte sich der Opera immer verabschiedet. Damit hatte ich mich abgefunden, hab einfach Galeon verwendet. Als ich das gelesen habe, hab ich verucht, Opera zu starten, und das hat funktioniert. Ich würde auch den Opera wieder abgeben, wenn ich dafür mein Programm wieder zum Laufen kriegen würde.

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Wahrscheinlich wurden die beiden Bibliotheken gegen andere Versionen der libpng gelinkt.

    Schau mal mit ldd nach, ob das so ist
    Beispiel:
    #> ldd $QTDIR/lib/libqt.so

    Wenn ja, mußt du eine der beiden neu kompilieren/linken.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer
    Registriert seit
    08.07.2002
    Beiträge
    719
    Nein, daran lag es nicht. libSDL_image ist gegen

    libpng.so.3 => /usr/lib/libpng.so.3

    gelinkt, so wie es sich gehört, und qt ist gar nicht gegen libPNG gelinkt. In meiner Qt-Konfiguration steht: png...yes(qt), daraus schließe ich das es um eine eingebaute libPNG handeln muß. Im übrigen benutze ich Mandrake 8.2, das heist, die Standart Qt Lib ist die 2.3.2, ich verwende aber eine 3.0.3 zum programmieren.

  4. #4
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Naja, dann ist halt die Qt Version von libpng eine andere Version.

    In deinem ersten posting steht, dass mit 1.2.1 kompiliert wurde, aber 1.0.12 läuft.

    aus png.h:
    * 1.0.12 2 10012 2.1.0.12
    * 1.1.0a-f - 10100 2.1.1.0a-f (branch abandoned)
    * 1.2.0beta1-2 2 10200 2.1.2.0beta1-2
    * 1.2.0beta3-5 3 10200 3.1.2.0beta3-5
    * 1.2.0rc1 3 10200 3.1.2.0rc1
    * 1.2.0 3 10200 3.1.2.0
    * 1.2.1beta1-4 3 10201 3.1.2.1beta1-4
    * 1.2.1rc1-2 3 10201 3.1.2.1rc1-2
    * 1.2.1 3 10201 3.1.2.1
    1.0.12 ist als Library mit der Version 2.1.0.12 im System
    1.2.1 ist als Library mit der Version 3.1.2.1 im System

    Letzter ist offensichtlich deine libpng3, dann ist die andere die von Qt

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  5. #5
    Registrierter Benutzer
    Registriert seit
    16.09.2002
    Beiträge
    73
    Es scheint, als ob Du 2 verschiedene libpng's installiert hast. Die eine aus QT (direkt eingebaut) und die andere aus SDLimage/libpng.so.3. Wenn Du QT aus den Quellen erstellt hast ist es also das beste QT mit dynamischer libpng zu rekompilieren.

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •