Seite 1 von 1

libQtGui.so.4 not found

Verfasst: 12. Mai 2006 10:50
von Flachkoepper
Mahlzeit,

ich hab hier ein Problem, bei dem ich echt verzweifel. Also, ich habe Qt 4.1.2 unter Suse Linux 9.3 mit debug-and-release compiliert, das $QTDIR richtig gesetzt und im libs-Verzeichnis befinden sich auch folgerichtig libQtGui_debug.so.4 und libQtGui.so.4 usw. Wenn ich jetzt mein Projekt mit CONFIG += release baue, läuft alles ohne Probleme. Baue ich es aber mit CONFIG += debug, kommt beim starten die Fehlermeldung:

Code: Alles auswählen

error while loading shared libraries: libQtGui.so.4: cannot open shared object file: No such file or directory
Der Audruck von ldd liefert

Code: Alles auswählen

 linux-gate.so.1 =>  (0xffffe000)
        libqwt.so.5 => /usr/local/lib/libqwt.so.5 (0x4003c000)
        libQtGui_debug.so.4 => /usr/local/Trolltech/Qt-4.1.2/lib/libQtGui_debug.so.4 (0x400d7000)
        libpng.so.3 => /usr/lib/libpng.so.3 (0x407d1000)
        libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x407ff000)
        libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x40807000)
        libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x4081f000)
        libXrender.so.1 => /usr/X11R6/lib/libXrender.so.1 (0x40828000)
        libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0x40830000)
        libXcursor.so.1 => /usr/X11R6/lib/libXcursor.so.1 (0x40834000)
        libXinerama.so.1 => /usr/X11R6/lib/libXinerama.so.1 (0x4083d000)
        libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x40840000)
        libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x408ad000)
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x408dc000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x408ea000)
        libQtCore_debug.so.4 => /usr/local/Trolltech/Qt-4.1.2/lib/libQtCore_debug.so.4 (0x409e6000)
        libz.so.1 => /lib/libz.so.1 (0x40bb5000)
        libdl.so.2 => /lib/libdl.so.2 (0x40bc6000)
        libpthread.so.0 => /lib/tls/libpthread.so.0 (0x40bca000)
        libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40bdd000)
        libm.so.6 => /lib/tls/libm.so.6 (0x40c9b000)
        libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40cbe000)
        libc.so.6 => /lib/tls/libc.so.6 (0x40cc6000)
        libQtGui.so.4 => not found
        libQtCore.so.4 => not found
        libexpat.so.0 => /usr/lib/libexpat.so.0 (0x40de0000)
        /lib/ld-linux.so.2 (0x40000000)
Häääh? libQtGui.so.4 und libQtCore.so.4 sind doch auch in $QTDIR/libs.
Irgednwer ne Ahnung, woran es liegen könnte?

Viele Grüße,
Flachkoepper

Verfasst: 12. Mai 2006 12:27
von FlorianBecker
Ist $QTDir/lib in deinem LD_LIBRARY_PATH?

mach einfach export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:$QTDIR/lib" das sollte dein Problem zumindest temporär lösen und falls du es dann immer wieder haben willst schreibst die Zeile auch einfach noch in den /etc/bash.bashrc oder ähnlich. Weiß nicht so genau, wie das unter SuSE so ist.

Verfasst: 12. Mai 2006 13:15
von Flachkoepper
Das hat das Problem gelöst, danke erstmal. Wobei mich das schon ein wenig erstaunt, denn die Datei INSTALL besagt:
For compilers that do not support rpath you must also extended the
LD_LIBRARY_PATH environment variable to include
/usr/local/Trolltech/Qt-4.1.2/lib. On Linux with GCC this step
is not needed.
Und da ich Linux mit gcc benutze...

Viele Grüße,
Flachkoepper

Verfasst: 12. Mai 2006 13:18
von FlorianBecker
Naja, du hast scheinbar im Debug Modus gebaut, denn diese Libs findet er ja auch.

Verfasst: 12. Mai 2006 13:22
von Flachkoepper
Nur noch mal eine sache zum Überlegen: selbes Programm im release-Modus compiliert, LD_LIBRARY_PATH ist nicht gesetzt, Ausgabe von ldd:
linux-gate.so.1 => (0xffffe000)
libqwt.so.5 => /usr/local/lib/libqwt.so.5 (0x4003c000)
libQtGui.so.4 => /usr/local/Trolltech/Qt-4.1.2/lib/libQtGui.so.4 (0x400d7000)
libpng.so.3 => /usr/lib/libpng.so.3 (0x4065f000)
libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x4068d000)
libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x40695000)
libXi.so.6 => /usr/X11R6/lib/libXi.so.6 (0x406ad000)
libXrender.so.1 => /usr/X11R6/lib/libXrender.so.1 (0x406b6000)
libXrandr.so.2 => /usr/X11R6/lib/libXrandr.so.2 (0x406be000)
libXcursor.so.1 => /usr/X11R6/lib/libXcursor.so.1 (0x406c2000)
libXinerama.so.1 => /usr/X11R6/lib/libXinerama.so.1 (0x406cb000)
libfreetype.so.6 => /usr/lib/libfreetype.so.6 (0x406ce000)
libfontconfig.so.1 => /usr/lib/libfontconfig.so.1 (0x4073b000)
libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x4076a000)
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40778000)
libQtCore.so.4 => /usr/local/Trolltech/Qt-4.1.2/lib/libQtCore.so.4 (0x40874000)
libz.so.1 => /lib/libz.so.1 (0x409de000)
libdl.so.2 => /lib/libdl.so.2 (0x409ef000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0x409f3000)
libstdc++.so.5 => /usr/lib/libstdc++.so.5 (0x40a06000)
libm.so.6 => /lib/tls/libm.so.6 (0x40ac4000)
libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x40ae7000)
libc.so.6 => /lib/tls/libc.so.6 (0x40aef000)
libexpat.so.0 => /usr/lib/libexpat.so.0 (0x40c08000)
/lib/ld-linux.so.2 (0x40000000)
Voila, da sind sie doch!??