Hallo zusammen, ich musste meinen Rechner komplett neu aufsetzen und nun fehlen mir einige Programme, die ich nur als Quelle bekomme. Nachdem ich QT5.4 neu installiert habe und das neu zu installierende Programm geladen habe erhalte ich beim Compilieren 522 Fehlermeldungen die alle so oder ähnlich aussehen. :-1: Warnung: libz.so.1, needed by /usr/lib64/libQtSvg.so, not found (try using -rpath or -rpath-link) /usr/lib64/libQtGui.so:-1: Fehler: undefined reference to `XFilterEvent' Es macht hierbei keinen Unterschied, ob ich in der IDE übersetzen lasse oder in der Konsole mit root-Rechten arbeite. Seltsam ist nur, wenn ich die beiden libs suchen lasse, werden sie da gefunden, wo sie auch sein sollten: usr/lib64/. Meine Frage an euch: wo liegt der Fehler? System: Suse 13.2 64 bit Gruß Bernd -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hallo, Am 07.05.2015 um 13:18 schrieb Bernhard Schmidt:
Hallo zusammen, ich musste meinen Rechner komplett neu aufsetzen und nun fehlen mir einige Programme, die ich nur als Quelle bekomme. Nachdem ich QT5.4 neu installiert habe und das neu zu installierende Programm geladen habe erhalte ich beim Compilieren 522 Fehlermeldungen die alle so oder ähnlich aussehen.
:-1: Warnung: libz.so.1, needed by /usr/lib64/libQtSvg.so, not found (try using -rpath or -rpath-link)
/usr/lib64/libQtGui.so:-1: Fehler: undefined reference to `XFilterEvent'
Es macht hierbei keinen Unterschied, ob ich in der IDE übersetzen lasse oder in der Konsole mit root-Rechten arbeite. Seltsam ist nur, wenn ich die beiden libs suchen lasse, werden sie da gefunden, wo sie auch sein sollten: usr/lib64/. Meine Frage an euch: wo liegt der Fehler?
System: Suse 13.2 64 bit
Ich programmiere auch mit QT 5.4 Framework unter openSUSE 13.2 (64 bit) und habe so ein seltsames Verhalten nicht bemerkt. Wo hast du die QT 5.4 Libraries her? Wenn ich zypper angeschmissen habe und er sich neue QT-Libraries holt, dann säubere ich immer das Projekt über Qt Creator im Menüpunkt Build / Clean All. Sowas solltest du im Besten Fall zwischendurch immer mal machen. Wenn das nicht helfen sollte, dann mache einfach mal ein kleines Beispielprojekt mit den jeweiligen QT-Komponenten, die das o.g. Problem verursachen. Solltest du dies reproduzieren können, dann gib mir das Beispielprojekt und ich prüfe das mal bei mir. -- Gruß Sebastian - openSUSE Member (Freespacer) Webseite/Blog: https://www.sebastian-siebert.de Wichtiger Hinweis zur openSUSE Mailing Liste: http://de.opensuse.org/openSUSE:Mailinglisten_Netiquette -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Sebastian Siebert
hat am 7. Mai 2015 um 22:59 geschrieben: Am 07.05.2015 um 13:18 schrieb Bernhard Schmidt: Hallo zusammen, ich musste meinen Rechner komplett neu aufsetzen und nun fehlen mir einige Programme, die ich nur als Quelle bekomme. Nachdem ich QT5.4 neu installiert habe und das neu zu installierende Programm geladen habe erhalte ich beim Compilieren 522 Fehlermeldungen die alle so oder ähnlich aussehen.
:-1: Warnung: libz.so.1, needed by /usr/lib64/libQtSvg.so, not found (try using -rpath or -rpath-link)
/usr/lib64/libQtGui.so:-1: Fehler: undefined reference to `XFilterEvent'
Ruf mal den auf ldconfig -p | grep libQtGui Gibt der Befehl nichts zurück trag den Pfad in /etc/ld.so.conf ein, mach ein "ldconfig" in der Konsole und prüfe noch mal danach mit "ldconfig -p | grep libQtGui". VG Olaf -------------------|-------------------|-------------------|-------------------|
Am 09.05.2015 um 07:51 schrieb Olaf Radicke:
Sebastian Siebert
hat am 7. Mai 2015 um 22:59 geschrieben: Am 07.05.2015 um 13:18 schrieb Bernhard Schmidt: Hallo zusammen, ich musste meinen Rechner komplett neu aufsetzen und nun fehlen mir einige Programme, die ich nur als Quelle bekomme. Nachdem ich QT5.4 neu installiert habe und das neu zu installierende Programm geladen habe erhalte ich beim Compilieren 522 Fehlermeldungen die alle so oder ähnlich aussehen.
:-1: Warnung: libz.so.1, needed by /usr/lib64/libQtSvg.so, not found (try using -rpath or -rpath-link)
/usr/lib64/libQtGui.so:-1: Fehler: undefined reference to `XFilterEvent' Ruf mal den auf
ldconfig -p | grep libQtGui
Hallo Olaf Hab ich gemacht, die Antwort war: libQtGui.so.4 (libc6,x86-64)==> /usr/lib64/libQtGui.so.4 libQtGui.so (libc6,x86-64)==> /usr/lib64/libQtGui.so Konsole mit root-rechten Als User mit dem gleichen Befehl: comand not found VG Bernd
Gibt der Befehl nichts zurück trag den Pfad in /etc/ld.so.conf ein, mach ein "ldconfig" in der Konsole und prüfe noch mal danach mit "ldconfig -p | grep libQtGui".
VG
Olaf
-------------------|-------------------|-------------------|-------------------|
-- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Bernhard Schmidt
hat am 9. Mai 2015 um 12:24 geschrieben: Am 09.05.2015 um 07:51 schrieb Olaf Radicke: Sebastian Siebert
hat am 7. Mai 2015 um 22:59 geschrieben: Am 07.05.2015 um 13:18 schrieb Bernhard Schmidt: Hallo zusammen, ich musste meinen Rechner komplett neu aufsetzen und nun fehlen mir einige Programme, die ich nur als Quelle bekomme. Nachdem ich QT5.4 neu installiert habe und das neu zu installierende Programm geladen habe erhalte ich beim Compilieren 522 Fehlermeldungen die alle so oder ähnlich aussehen.
:-1: Warnung: libz.so.1, needed by /usr/lib64/libQtSvg.so, not found (try using -rpath or -rpath-link)
/usr/lib64/libQtGui.so:-1: Fehler: undefined reference to `XFilterEvent' Ruf mal den auf
ldconfig -p | grep libQtGui
Hallo Olaf Hab ich gemacht, die Antwort war: libQtGui.so.4 (libc6,x86-64)==> /usr/lib64/libQtGui.so.4 libQtGui.so (libc6,x86-64)==> /usr/lib64/libQtGui.so
Gut, dann gehe ich davon aus, das es Objekt-Fils gibt, die nicht binär kompatibel sind. Du kannst auch noch mal prüfen: ldconfig -p | grep libQtSvg Also ich würde mal vermuten, du wirst alles was neu Übersetzen müssen, was auf die Libs zugreifen will. Die Header-Dateien (unter include) müssen die selben sein, mit denen die Objectfiles erstellt wurden. Die Qt-Apps müssen mit diesen Header-Datein neu übersetzt werden, mit sie binär kompatibel sind. Bevor du damit anfängst, würde ich aber noch mal genau über dein Konzept nachdenken, wie du Software auf dein Rechner bringen willst. Denn ein komplettest Qt/KDE zu übersetzen dürfte Tage dauern. VG Olaf
Am 10.05.2015 um 10:38 schrieb Olaf Radicke:
Bernhard Schmidt
hat am 9. Mai 2015 um 12:24 geschrieben: Am 09.05.2015 um 07:51 schrieb Olaf Radicke: Sebastian Siebert
hat am 7. Mai 2015 um 22:59 geschrieben: Am 07.05.2015 um 13:18 schrieb Bernhard Schmidt: Hallo zusammen, ich musste meinen Rechner komplett neu aufsetzen und nun fehlen mir einige Programme, die ich nur als Quelle bekomme. Nachdem ich QT5.4 neu installiert habe und das neu zu installierende Programm geladen habe erhalte ich beim Compilieren 522 Fehlermeldungen die alle so oder ähnlich aussehen.
:-1: Warnung: libz.so.1, needed by /usr/lib64/libQtSvg.so, not found (try using -rpath or -rpath-link)
/usr/lib64/libQtGui.so:-1: Fehler: undefined reference to `XFilterEvent' Ruf mal den auf
ldconfig -p | grep libQtGui
Hallo Olaf Hab ich gemacht, die Antwort war: libQtGui.so.4 (libc6,x86-64)==> /usr/lib64/libQtGui.so.4 libQtGui.so (libc6,x86-64)==> /usr/lib64/libQtGui.so
Gut, dann gehe ich davon aus, das es Objekt-Fils gibt, die nicht binär kompatibel sind.
Du kannst auch noch mal prüfen:
ldconfig -p | grep libQtSvg
Also ich würde mal vermuten, du wirst alles was neu Übersetzen müssen, was auf die Libs zugreifen will.
Die Header-Dateien (unter include) müssen die selben sein, mit denen die Objectfiles erstellt wurden. Die Qt-Apps müssen mit diesen Header-Datein neu übersetzt werden, mit sie binär kompatibel sind.
Bevor du damit anfängst, würde ich aber noch mal genau über dein Konzept nachdenken, wie du Software auf dein Rechner bringen willst. Denn ein komplettest Qt/KDE zu übersetzen dürfte Tage dauern.
Bernhard, wenn man bei meinen ersten Post die Frage beantwortet hätte, wäre man da nicht schon an der Lösung näher dran? -_- Die o.g. Ausgabe deckt doch schon bereits meine Vermutung in meiner voran gegangenen Frage auf, dass eine bereits übersetzte Komponente auf Basis von QT 5.4 auf QT 4.8 Libraries zugreift und so die Inkompatibilität auf dem neuen System an der gleichen Stelle auslöst. Nichts anderes sagt der Compiler bzw. eher der Linker. Da wurde offensichtlich auf dem alten System die QT 4.x Libraries mit QT 5.4 Libraries ersetzt, was ich für sehr gefährlich halte wie du es bereits schon erfahren hast. Wenn da tatsächlich QT 5.4 auf openSUSE 13.2 installiert wäre, dann würden im besten Fall andere Namen der Libraries angesprochen. Vorausgesetzt man hat die QT Libraries aus dem OBS Repo installiert. [1] Dann gebe es solche Kollisionen gar nicht. Daher war auch meine erste Frage ziemlich berechtigt gewesen, woher du die QT 5.4 Libraries hast? Beispielausgabe mit QT 5.4 Framework via ldd: # ldd qt5-app ... libqca-qt5.so.2 => /usr/lib64/libqca-qt5.so.2 (0x00007fea27018000) libQt5Widgets.so.5 => /usr/lib64/libQt5Widgets.so.5 (0x00007fea267a0000) libQt5Gui.so.5 => /usr/lib64/libQt5Gui.so.5 (0x00007fea26080000) libQt5Sql.so.5 => /usr/lib64/libQt5Sql.so.5 (0x00007fea25e38000) libQt5Core.so.5 => /usr/lib64/libQt5Core.so.5 (0x00007fea25770000) ... [1] http://download.opensuse.org/repositories/KDE:/Qt54/openSUSE_13.2/ -- Gruß Sebastian - openSUSE Member (Freespacer) Webseite/Blog: https://www.sebastian-siebert.de Wichtiger Hinweis zur openSUSE Mailing Liste: http://de.opensuse.org/openSUSE:Mailinglisten_Netiquette -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Am 10.05.2015 um 17:42 schrieb Sebastian Siebert:
Am 10.05.2015 um 10:38 schrieb Olaf Radicke:
Bernhard Schmidt
hat am 9. Mai 2015 um 12:24 geschrieben: Am 09.05.2015 um 07:51 schrieb Olaf Radicke: Sebastian Siebert
hat am 7. Mai 2015 um 22:59 geschrieben: Am 07.05.2015 um 13:18 schrieb Bernhard Schmidt: Hallo zusammen, ich musste meinen Rechner komplett neu aufsetzen und nun fehlen mir einige Programme, die ich nur als Quelle bekomme. Nachdem ich QT5.4 neu installiert habe und das neu zu installierende Programm geladen habe erhalte ich beim Compilieren 522 Fehlermeldungen die alle so oder ähnlich aussehen.
:-1: Warnung: libz.so.1, needed by /usr/lib64/libQtSvg.so, not found (try using -rpath or -rpath-link)
/usr/lib64/libQtGui.so:-1: Fehler: undefined reference to `XFilterEvent' Ruf mal den auf
ldconfig -p | grep libQtGui
Hallo Olaf Hab ich gemacht, die Antwort war: libQtGui.so.4 (libc6,x86-64)==> /usr/lib64/libQtGui.so.4 libQtGui.so (libc6,x86-64)==> /usr/lib64/libQtGui.so
Gut, dann gehe ich davon aus, das es Objekt-Fils gibt, die nicht binär kompatibel sind.
Du kannst auch noch mal prüfen:
ldconfig -p | grep libQtSvg
Also ich würde mal vermuten, du wirst alles was neu Übersetzen müssen, was auf die Libs zugreifen will.
Die Header-Dateien (unter include) müssen die selben sein, mit denen die Objectfiles erstellt wurden. Die Qt-Apps müssen mit diesen Header-Datein neu übersetzt werden, mit sie binär kompatibel sind.
Bevor du damit anfängst, würde ich aber noch mal genau über dein Konzept nachdenken, wie du Software auf dein Rechner bringen willst. Denn ein komplettest Qt/KDE zu übersetzen dürfte Tage dauern.
Bernhard, wenn man bei meinen ersten Post die Frage beantwortet hätte, wäre man da nicht schon an der Lösung näher dran? -_-
Die o.g. Ausgabe deckt doch schon bereits meine Vermutung in meiner voran gegangenen Frage auf, dass eine bereits übersetzte Komponente auf Basis von QT 5.4 auf QT 4.8 Libraries zugreift und so die Inkompatibilität auf dem neuen System an der gleichen Stelle auslöst. Nichts anderes sagt der Compiler bzw. eher der Linker. Da wurde offensichtlich auf dem alten System die QT 4.x Libraries mit QT 5.4 Libraries ersetzt, was ich für sehr gefährlich halte wie du es bereits schon erfahren hast.
Wenn da tatsächlich QT 5.4 auf openSUSE 13.2 installiert wäre, dann würden im besten Fall andere Namen der Libraries angesprochen. Vorausgesetzt man hat die QT Libraries aus dem OBS Repo installiert. [1] Dann gebe es solche Kollisionen gar nicht.
Daher war auch meine erste Frage ziemlich berechtigt gewesen, woher du die QT 5.4 Libraries hast? Das gesamte QT habe ich von QT Company, part of Dexia PLC
Beispielausgabe mit QT 5.4 Framework via ldd: # ldd qt5-app ... libqca-qt5.so.2 => /usr/lib64/libqca-qt5.so.2 (0x00007fea27018000) libQt5Widgets.so.5 => /usr/lib64/libQt5Widgets.so.5 (0x00007fea267a0000) libQt5Gui.so.5 => /usr/lib64/libQt5Gui.so.5 (0x00007fea26080000) libQt5Sql.so.5 => /usr/lib64/libQt5Sql.so.5 (0x00007fea25e38000) libQt5Core.so.5 => /usr/lib64/libQt5Core.so.5 (0x00007fea25770000) ...
[1] http://download.opensuse.org/repositories/KDE:/Qt54/openSUSE_13.2/
-- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
Hallo, Am Thu, 07 May 2015, Bernhard Schmidt schrieb:
:-1: Warnung: libz.so.1, needed by /usr/lib64/libQtSvg.so, not found (try using -rpath or -rpath-link)
ldconfig -p | grep libz
/usr/lib64/libQtGui.so:-1: Fehler: undefined reference to `XFilterEvent'
ldconfig -p | grep libX11
Meine Frage an euch: wo liegt der Fehler?
Dir fehlen wohl xorg-x11-libX11-devel und zlib-devel. Ersteres könnte etwas anders heißen. -dnh -- Beim Bildschirm offenbart [es] allerdings Restgene aus der Großserie: Es ist ein handelsüblicher 13,4-Zoll- Schminkspiegel [..] -- c't 09/12/066 -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org
participants (4)
-
Bernhard Schmidt
-
David Haller
-
Olaf Radicke
-
Sebastian Siebert