QT Abhaengigkeiten geloescht

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
stealthmx
Beiträge: 5
Registriert: 04.11.2018 16:06:54

QT Abhaengigkeiten geloescht

Beitrag von stealthmx » 04.11.2018 22:55:29

Hallo zusammen

ich nutze ein Debian 9.5 x64 auf einem Desktopcomputer. Ich nutze auch gerne virtualbox. Nun habe ich es geschafft, die Abhaenigkeiten von qt "kaputt zu machen".

Ich wollte eine Software (dolphin emulator) installieren die Qt 5.9 voraussetzt. Installiert ist auf dem Debian die 5.7.1. Aus diesem Grund habe ich die 5.9 (prebuild Version direkt von Qt) systemweit in /opt/Qt/... installiert.

Damit der build von dolphin klappt habe ich fuer cmake den Pfad zum Qt haendisch im qtchooser gestzt.

qtchooser default.conf:
/opt/Qt5.9.0/5.9/gcc_64/bin/
/opt/Qt5.9.0/5.9/gcc_64/lib/

und
PATH=/opt/Qt5.9.0/5.9/gcc_64/bin:$PATH
export PATH

Somit klappte das Bauen und anschließende Installieren.

Nun das Problem:
Ich startete die Applikation und es wurde angezeigt, dass Qt 5.9 vorasugesetzt wird. Anscheinend hat es nicht ausgereicht lediglich auf den Qt5.9 Pfad zu zeigen.

Ich setzte qtchooser wieder auf den alten wert zurück:

qtchooser default.conf:
/usr/lib/x86_64-linux-gnu/qt5/bin
/usr/lib/x86_64-linux-gnu


Jetzt dachte ich, da libQt5Core.so.5.9 benötigt wird und in dem Ordner lediglich

libQt5Core.so (link)
libQt5Core.so.5.7 (link)
libQt5Core.so.5.7.1

liegen, fuege ich noch die libQt5Core.so.5.9 hinzu. Mittels Softlink habe ich Qt anscheinend noch den Rest gegeben.
Das waren die letzten Befehle. Ich wollte, dass die libQt5Core.so auf die libQt5Core.so.5.9 zeigt. (Ich glaube das war ein Fehler)

Code: Alles auswählen

cd /opt/Qt5.9.0/5.9/gcc_64/lib/ # in das neue Qt Verzeichnis waechseln
sudo cp libQt5Core.so.5.9 /usr/lib/x86_64-linux-gnu/
cd /usr/lib/x86_64-linux-gnu/ 
sudo mv libQt5Core.so libQt5Core.so.orig # das war sinnlos
sudo mv libQt5Core.so.orig libQt5Core.so # ebenfalls
sudo ln -sf libQt5Core.so libQt5Core.so.5.9
sudo cp /opt/Qt5.9.0/5.9/gcc_64/lib/libQt5Core.so.5.9 /usr/lib/x86_64-linux-gnu/
sudo rm libQt5Core.so.5.9 
Und ich glaube nach dem letzten Befehl ging die virtualbox aus.

Code: Alles auswählen

ldd libQt5Core.so
	linux-vdso.so.1 (0x00007ffdf711d000)
	libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fb77018a000)
	libicui18n.so.56 => not found
	libicuuc.so.56 => not found
	libicudata.so.56 => not found
	librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fb76ff82000)
	libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fb76fd68000)
	libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fb76fb64000)
	libgthread-2.0.so.0 => /usr/lib/x86_64-linux-gnu/./libgthread-2.0.so.0 (0x00007fb76f962000)
	libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fb76f64e000)
	libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/./libstdc++.so.6 (0x00007fb76f2cc000)
	libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fb76efc8000)
	libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fb76edb1000)
	libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fb76ea12000)
	/lib64/ld-linux-x86-64.so.2 (0x00007fb770adf000)
	libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fb76e79f000)
Das ist nun mein Stand. Ich haette von den libs die Finger lassen sollen.
So wie es aussieht fehlen nun drei libs der libQt5Core.so.

Das ist der aktuelle Stand im Verzeichnis:

Code: Alles auswählen

ll | grep libQt5Core.so
lrwxrwxrwx   1 root root       19 Jan 11  2017 libQt5Core.so -> libQt5Core.so.5.7.1
lrwxrwxrwx   1 root root       19 Jan 10  2018 libQt5Core.so.5 -> libQt5Core.so.5.7.1
lrwxrwxrwx   1 root root       19 Jan 10  2018 libQt5Core.so.5.7 -> libQt5Core.so.5.7.1
-rw-r--r--   1 root root  5458240 Nov  4 14:33 libQt5Core.so.5.7.1

ll | grep libicui18n
-rw-r--r--   1 root root 34880310 Mar 14  2018 libicui18n.a
lrwxrwxrwx   1 root root       18 Mar 14  2018 libicui18n.so -> libicui18n.so.57.1
lrwxrwxrwx   1 root root       18 Mar 14  2018 libicui18n.so.57 -> libicui18n.so.57.1
-rw-r--r--   1 root root  2591816 Mar 14  2018 libicui18n.so.57.1

ll | grep libicuuc
-rw-r--r--   1 root root 18430860 Mar 14  2018 libicuuc.a
lrwxrwxrwx   1 root root       16 Mar 14  2018 libicuuc.so -> libicuuc.so.57.1
lrwxrwxrwx   1 root root       16 Mar 14  2018 libicuuc.so.57 -> libicuuc.so.57.1
-rw-r--r--   1 root root  1727216 Mar 14  2018 libicuuc.so.57.1

ll | grep libicudata
-rw-r--r--   1 root root 25670180 Mar 14  2018 libicudata.a
lrwxrwxrwx   1 root root       18 Mar 14  2018 libicudata.so -> libicudata.so.57.1
lrwxrwxrwx   1 root root       18 Mar 14  2018 libicudata.so.57 -> libicudata.so.57.1
-rw-r--r--   1 root root 25675624 Mar 14  2018 libicudata.so.57.1
Fuer mich sieht es so aus als ob die libicui18n.so.56 (und die beiden anderen auch) nicht da waere.
Waere jemand so gnaedig mir zu sagen, was man an dieser Stelle machen kann? Gibt es jetzt noch eine Moeglichkeit ohne eine komplette Neuinstallation das Problem zu beheben?

Zum beheben, habe ich noch Qt 5.7.1 als prebuild runtergeladen und aus dem lib Verzechnis die benoetigen Libs in /usr/lib/x86_64-linux-gnu/ einefuegt. Nun "verschwand" zwar bei ldd das Problem jedoch hatte ich beim Start nun eine andere Fehlermeldung. So in etwa sah die Fehlermeldung aus:

Code: Alles auswählen

This application failed to start because it could not find or load the Qt platform plugin "xcb"
in "".

Available platform plugins are: xcb.

Reinstalling the application may fix this problem.
Aborted
Bin fuer jede Hilfe dankbar!

VG
Hans

cronoik
Beiträge: 2049
Registriert: 18.03.2012 21:13:42
Lizenz eigener Beiträge: GNU Free Documentation License

Re: QT Abhaengigkeiten geloescht

Beitrag von cronoik » 04.11.2018 23:56:43

Willkommen im Forum.
Was ist den dein eigentlicher Status? Also was geht nicht?
stealthmx hat geschrieben: ↑ zum Beitrag ↑
04.11.2018 22:55:29
Fuer mich sieht es so aus als ob die libicui18n.so.56 (und die beiden anderen auch) nicht da waere.
Zumindest gibt es libicui18n.so.56 bei Debian nicht [1] und das scheint auch nicht die Debiandatei zu sein:

Code: Alles auswählen

ldd /usr/lib/x86_64-linux-gnu/libQt5Core.so
        linux-vdso.so.1 (0x00007ffe743f8000)
        libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fae82bee000)
        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fae829d4000)
        libicui18n.so.57 => /usr/lib/x86_64-linux-gnu/libicui18n.so.57 (0x00007fae8255a000)
        libicuuc.so.57 => /usr/lib/x86_64-linux-gnu/libicuuc.so.57 (0x00007fae821b2000)
        libpcre16.so.3 => /usr/lib/x86_64-linux-gnu/libpcre16.so.3 (0x00007fae81f49000)
        libdouble-conversion.so.1 => /usr/lib/x86_64-linux-gnu/libdouble-conversion.so.1 (0x00007fae81d38000)
        libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fae81b34000)
        libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fae81820000)
        librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fae81618000)
        libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fae81296000)
        libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fae80f92000)
        libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fae80d7b000)
        libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fae809dc000)
        /lib64/ld-linux-x86-64.so.2 (0x00007fae832da000)
        libicudata.so.57 => /usr/lib/x86_64-linux-gnu/libicudata.so.57 (0x00007fae7ef5f000)
        libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fae7ecec000)
Lass folgendes laufen:

Code: Alles auswählen

apt-get install --reinstall libqt5core5a qtbase5-dev
Des Weiteren kannst du mal folgendes laufen lassen:

Code: Alles auswählen

dpkg --audit
stealthmx hat geschrieben: ↑ zum Beitrag ↑
04.11.2018 22:55:29
Zum Beheben, habe ich noch Qt 5.7.1 als prebuild runtergeladen und aus dem lib Verzechnis die benoetigen Libs in /usr/lib/x86_64-linux-gnu/ einefuegt.
So solltest du mit deinem System nicht umgehen. Der Zugriff auf solche wichtigen Ordner erfolgt ueber apt, ausser man weis genau was man tut.

[1] https://packages.debian.org/search?mode ... i18n.so.56
Hilf mit unser Wiki zu verbessern!

stealthmx
Beiträge: 5
Registriert: 04.11.2018 16:06:54

Re: QT Abhaengigkeiten geloescht

Beitrag von stealthmx » 05.11.2018 08:08:29

Hallo,

ich danke dir! :THX: Das reinstallieren der Pakete hat die Abhaengigkeiten wieder zusammengesetzt. Ich were nun etwas vorsichtiger mit den Systempaketen umgehen.

VG
Hans

pferdefreund
Beiträge: 3791
Registriert: 26.02.2009 14:35:56

Re: QT Abhaengigkeiten geloescht

Beitrag von pferdefreund » 05.11.2018 08:43:12

Die Fremdpakete nach opt ist ja noch ok. Dann aber in einer Shell gezielt für eigene Sachen den LD_LIBRARY_PATH entsprechend setzen. Dann ist das System nicht betroffen und den Ordner in /opt kann man auch bei Bedarf problemlos removen.
Nur halt nix nach /usr+ Unterordner packen. Die gehören dem System und da hat man nix dran rumzupfuschen. (Hab mein System mit sowas auch mal etwas struppelig gemacht - hatte allerdings ein aktuelles Backup und nach dem Restore war alles wieder gut).

stealthmx
Beiträge: 5
Registriert: 04.11.2018 16:06:54

Re: QT Abhaengigkeiten geloescht

Beitrag von stealthmx » 05.11.2018 13:28:44

Danke fuer den Tipp mit dem Librarypath, den hatte ich leider gar nicht auf dem Schirm!

VG
Hans

Antworten