Die kurze Frage: Gibt es eine Möglichkeit, für Qt5 einfach alle Runtime-Sachen auf den Stand des offiziellen OpenSuse-Repositories zu "resetten"? Das Problem ist dass man mit "zypper se libqt5" schon mal eine ellenlange Liste von Paketen bekommt, die man dann ggf. mit "zypper in -f ..." neu installieren kann - und auch das scheint dann irgendwie noch nicht zu reichen...
Die längere Erläuterung: Vor einem halben Jahr habe ich mein System völlig neu aufgesetzt, inklusive Qt usw. Man bekommt da in meiner OpenSuse-Version die Qt-Version 5.6.2 - so weit so gut. Aktuell ist Qt aber schon viel weiter, und weil ich zum Programmieren eine Version >= Qt 5.9 brauchte habe ich die dann von Qt geholt und installiert. Die landet dabei an einem ganz eigenen Ort - eigentlich so weit ok.
Dann weiss ich nicht mehr genau alles was ich damals "vergurkt" habe! Jedenfalls hatte ich irgendwie versucht, die Version 5.9 zur "Standardversion" zu machen - und da muss ich dann wohl Dinge vermurkst haben durch über-kopieren usw. Was man halt so in der Verzweiflung nach vielen Stunden alles probiert. (Nein, niemand muss mir jetzt erläutern wollen dass das vielleicht nicht alles ganz schlau war!). Das führte zu seltsamen Fehlermeldungen, sodass ich dann lieber wieder zurück wollte. Daraufhin habe ich halt einfach nochmals die Version 5.6.2 geholt und auch noch installiert - aber die landete dann wieder im eigenen Bereich (/opt/...). Ok, ich habe dann halt wieder die "vergurkte" Hauptversion (in usr/lib64...) mit den Files der alten Version überschrieben - und dann lief's seltsamerweise noch immer nicht!
Konkret läuft in so einem Fall dann z.B. yast nicht mehr, oder bei mir auch keepass.
Mit einigem "Herummurksen" mit passenden qt.conf Dateien habe ich dann erst mal wieder alles zum laufen bekommen: yast und keepass gehen, und programmieren kann ich mit der neueren Qt-Version.
Jetzt wollte ich vor ein paar Tagen aber mal wieder etwas neues installieren - openshot. Und das lief dann erst mal wieder nicht! Das Ding braucht scheinbar python, und da kamen dann Beschwerden über nicht gefundene Qt APIs.
Zuerst dachte ich dass es halt wieder das Versionsproblem ist, aber es suchte nach Version 5.6.2 - und zwar in einem Ordner wo genau das alles drin ist! Die Fehlermeldung zeigte mir dann noch dass das Teil immer nach einem "Qt5_...PRIVATE_API" fragt - und nach ein paar weiteren Stunden suchen, probieren und googeln (und diesmal ohne irgendwas zu überschreiben...) habe ich etwas gelernt:
OpenSuse hat offenbar die grandiose Idee gehabt, eigene Qt5-Libraries zu generieren wo "private" Interfaces noch immer mit einem "PRIVATE_API" dekoriert werden!!!
Mit der Folge dass Version 5.6.2 von OpenSuse nicht kompatibel ist mit Version 5.6.2 von Qt - und das ausschliesslich wegen dieser idiotischen (oder gibt es noch stärkere Ausdrücke? Nein, hier lieber nicht...) "Dekoration"... (Nein, sagt mir bitte nicht wer diese "tolle" Idee gehabt hat - ich könnte mich sonst vergessen... Angeblich aus irgendwelchen "Sicherheitsgründen" - nur welchen??)
So war mir dann schliesslich halt auch endlich klar warum die Rück-Überschreibung nicht gelungen ist: Ich habe halt nicht die OpenSuse-Version benutzt!
Dummerweise ist es nun halt nicht so dass man einfach statt dessen die OpenSuse-Version wieder "auffrischen" kann: die kommt zersplittert in unendlich viele kleine Pakete daher! Ich habe inzwischen ein paar davon mit "zypper in -f ..." neu installiert, aber ich finde scheinbar nicht alle, denn z.B. yast läuft jetzt wieder nicht mehr...
Drum also meine zu Beginn gestellte Frage! Wer schon mal erfolgreich eine OpenSuse Qt5-Installation "aufgeräumt" hat, oder sonst einen hilfreichen Tipp auf Lager hat: Ich bin für alles dankbar! Denn ein Neuaufsetzen des ganzen Systems würde mich auch wieder sehr viel unnötige Zeit kosten...
Mit Dank und Gruss,
Cornelis