• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

[gelöst] KDE aus kde-stable kaputt!

Status
Für weitere Antworten geschlossen.

taki

Advanced Hacker
Hallo
Ich habe gestern mit apt-get upgrade && apt-get update mein KDE upgedatet (von 3.4.2 auf 3.4.3). Seit dem kann ich keine RPMs mehr für Kalva erstellen. Beim ./configure wird gemeckert, dass kdelibs3 nicht mit der hier installierten QT-Version gelinkt wurden. Diese Fehlermeldung habe ich noch nie vorher gesehen. Wie bekomme ich raus, gegen welche Version von QT die von Apt installierten kdelibs3 wirklich gelinkt wurden? Jedenfalls war es offenbar wohl nicht die auch von Apt installierte Version 3.3.5!

P.S. Meine Sources.lst sieht so aus (ohne Kommentare):

Code:
taki@rivendell:/usr/src/packages> cat /etc/apt/sources.list |grep -v \#
rpm ftp://mirrors.mathematik.uni-bielefeld.de/pub/linux/suse/apt/ SuSE/10.0-i386 base update security rpmkeys  packman  packman-i686 kde3-stable kde
rpm ftp://ftp.gwdg.de/pub/linux/suse/apt/ SuSE/10.0-i386 base update security rpmkeys  packman  packman-i686 kde3-stable kde


Das sind die letzten Zeilen vom "rpmbuild -ba /usr/src/packages/SPECS/kalva-0.8.49c-taki.1.spec":

Code:
checking for Qt... libraries /usr/lib/qt3/lib, headers /usr/lib/qt3/include using -mt
checking for moc... /usr/lib/qt3/bin/moc
checking for uic... /usr/lib/qt3/bin/uic
checking whether uic supports -L ... yes
checking whether uic supports -nounload ... yes
checking if Qt needs -ljpeg... no
checking for rpath... yes
checking for KDE... libraries /opt/kde3/lib, headers /opt/kde3/include
checking if UIC has KDE plugins available... no
configure: error:
you need to install kdelibs first.

If you did install kdelibs, then the Qt version that is picked up by
this configure is not the same version you used to compile kdelibs.
The Qt Plugin installed by kdelibs is *ONLY* loadable if it is the
_same Qt version_, compiled with the _same compiler_ and the same Qt
configuration settings.

error: Bad exit status from /var/tmp/rpm-tmp.25289 (%build)


RPM build errors:
    Bad exit status from /var/tmp/rpm-tmp.25289 (%build)
 
OP
taki

taki

Advanced Hacker
man rpm und dort eine Suche nach den Query Options brachte:

Code:
rivendell:/var/cache/apt/archives # rpm -qR kdelibs3 |grep qt3
qt3 >= 3.3.4

Dann tief luftgeholt und:

Code:
rivendell:/var/cache/apt/archives # rpm --nodeps -e qt3 qt3-devel qt3-devel-doc qt3-devel-tools
rivendell:/var/cache/apt/archives # rpm -i qt3_3.3.4-29_i586.rpm qt3-devel_3.3.4-29_i586.rpm qt3-devel-doc_3.3.4-29_i586.rpm qt3-devel-tools_3.3.4-29_i586.rpm

und anschließend gleich in /etc/apt/apt.conf.d/apt.conf eingetragen:

Code:
   Hold { "qt3"; };

...und Ruhe ist. ...und endlich gibt es auf der Projektseite auch kalva-0.8.49c-taki.1.i586.rpm und. Co :wink:

Aber etwas verstimmt bin ich schon.

Wenn jemand KDE-Pakete für da apt-Repository kde-stable erstellt, sollte er schon auch die QT-Version verwenden, die im apt-Repository steht. Mit einer so konservativen sources.list wie meiner hätte so etwas eigentlich nicht passieren dürfen. Wenn zwischen mehreren suser-Repositories mal Konflikte bei den Bibliotheken auftauchen, kann ich das verstehen, das ist eigentlich ganz klar. Aber bei den offiziellen Repositories sollten die Abhängigkeiten schon mit dem Zustand im base-Repository übereinstimmen.
 

SoeDib

Member
taki schrieb:
Wenn jemand KDE-Pakete für da apt-Repository kde-stable erstellt, sollte er schon auch die QT-Version verwenden, die im apt-Repository steht. Mit einer so konservativen sources.list wie meiner hätte so etwas eigentlich nicht passieren dürfen. Wenn zwischen mehreren suser-Repositories mal Konflikte bei den Bibliotheken auftauchen, kann ich das verstehen, das ist eigentlich ganz klar. Aber bei den offiziellen Repositories sollten die Abhängigkeiten schon mit dem Zustand im base-Repository übereinstimmen.

Das betrifft nicht nur das apt-Repository. Das Lustige ist, daß wohl alle gegenwärtig erhältlichen kdelibs3-3.4.3-2s als Abhängigikeit qt3>=3.3.5 enthalten, und letzteres auch sowohl in den apt-Repositories als auch in den normalen supplementary-Verzeichnissen bereitsteht.

Was bedeutet das jetzt aber? Aus deiner Fehlermeldung schließe ich, daß kdelibs3 nicht wirklich gegen qt3-3.3.5 gelinkt ist. Oder hat da bloß jemand verbeutelt, der kdelibs3 eine neue Releasenummer zu verpassen, und Du hast in einem ungünstigen Moment upgegraded und das alte kdelibs3-3.4.3-2 (<--> qt3-3.3.4) mit dem neuen qt3-3.3.5 erwischt?

So wie es jetzt ist, ist apt für mich jedenfalls nahezu unbenutzbar:
Code:
mybox:~ # rpm -q kdelibs3
kdelibs3-3.4.3-2
mybox:~ # rpm -qR kdelibs3|grep qt3
qt3 >= 3.3.4
mybox:~ # apt policy kdelibs3
kdelibs3:
  Installed: 3.4.3-2
  Candidate: 3.4.3-2
  Version Table:
     3.5.0-2 0
         50 ftp://ftp4.gwdg.de SuSE/9.1-i386/kde-unstable pkglist
     3.5.0-1 0
         50 ftp://ftp4.gwdg.de SuSE/9.1-i386/kde-unstable pkglist
     3.4.91-5 0
         50 ftp://ftp4.gwdg.de SuSE/9.1-i386/kde-unstable pkglist
 *** 3.4.3-2 0
        500 ftp://ftp4.gwdg.de SuSE/9.1-i386/kde pkglist
        500 ftp://ftp4.gwdg.de SuSE/9.1-i386/kde3-stable pkglist
        100 RPM Database
 [...bla...]
mybox:~ # apt policy qt3
qt3:
  Installed: 3.3.4-29
  Candidate: 3.3.5-17
  Version Table:
     3.3.5-17 0
        500 ftp://ftp4.gwdg.de SuSE/9.1-i386/kde pkglist
     3.3.5-15 0
         50 ftp://ftp4.gwdg.de SuSE/9.1-i386/kde-unstable pkglist
     3.3.5-4 0
         50 ftp://ftp4.gwdg.de SuSE/9.1-i386/kde-unstable pkglist
 *** 3.3.4-29 0
        500 ftp://ftp4.gwdg.de SuSE/9.1-i386/kde3-stable pkglist
        100 RPM Database
 [...bla...]
mybox:~ # apt -s upgrade
Reading Package Lists... Done
Building Dependency Tree... Done
You might want to run `apt-get -f install' to correct these.
The following packages have unmet dependencies:
  kdelibs3: Depends: qt3 (>= 3.3.5) but 3.3.4-29 is installed
E: Unmet dependencies. Try using -f.
 
OP
taki

taki

Advanced Hacker
Mit kde-unstable in der sources.list ist es klar, dass apt ein neueres qt braucht, schließlich bietet Dir apt kde-3.5 RC1 an. Hier sind die Pakete gegen qt 3.3.5 gelinkt worden.

Dass das neue Qt aber im Repository kde liegt, ist meiner Meinung nach eine Schande. In kde und kde-stable sind die kdelibs3 gegen qt 3.3.4 gelinkt. Nur in kde-unstable wurde gegen qt 3.3.5 gelinkt. Dann sollte qt 3.3.5 auch nur dort im Repository liegen!

Übrigens gab es zur Laufzeit ausser dem Verschwinden des Plastik-Themes (da kamen wohl die Schatten her) keine Probleme mit kde 3.4.3-2 auf qt 3.3.5. Alle KDE-Anwendungen liefen einwandfrei. Nur konnte ich damit keine Sourcen mehr übersetzen, weil der moc von Qt so nicht funktioniert.
 

SoeDib

Member
taki schrieb:
Mit kde-unstable in der sources.list ist es klar, dass apt ein neueres qt braucht, schließlich bietet Dir apt kde-3.5 RC1 an.
Wie du vielleicht bemerkt hast, ist kde-unstable auf 50 gepinnt, wird also nicht wirksam, wenn nich ausdrücklich angefordert.
 

ojkastl

Hacker
Ich hab das selbe Problem. Ich musste qt3-non-mt deinstallieren, dann konnte ich upgraden. natürlich bräuchte ich qt3-non-mt, aber bevor ich ein "instabiles KDE" hab, weil die falsche qt3-Version installiert ist....

Ich warte halt jetzt auf ein qt3-non-mt, das sich mit der 3.3.5-qt3 verträgt ;-(
 

SoeDib

Member
SoeDib schrieb:
So wie es jetzt ist, ist apt für mich jedenfalls nahezu unbenutzbar:
Code:
mybox:~ # apt -s upgrade
Reading Package Lists... Done
Building Dependency Tree... Done
You might want to run `apt-get -f install' to correct these.
The following packages have unmet dependencies:
  kdelibs3: Depends: qt3 (>= 3.3.5) but 3.3.4-29 is installed
E: Unmet dependencies. Try using -f.
Ich hab des jetzt gelöst, indem ich mir kdelibs3 neu gebaut und in der spec-Datei die Version auf 3.4.3-2a gesetzt hab, dann einfach "rpm -Uvh /usr/src/packages/RPMS/i586/kdelibs3-3.4.3-2a.i586.rpm", und nu läuft alles wieder.

Wieso ist das eigentlich noch nicht behoben? Hmm - hat von euch jemand mal bei Novell Bescheid gegeben, was da für ein Mist in den supplementary-Verzeichnissen steht? (Ich nämlich nicht - hab mich drauf verlassen, daß das schon irgend jemand tun wird... :roll: )
 

oc2pus

Ultimate Guru
SoeDib schrieb:
Wieso ist das eigentlich noch nicht behoben? Hmm - hat von euch jemand mal bei Novell Bescheid gegeben, was da für ein Mist in den supplementary-Verzeichnissen steht? (Ich nämlich nicht - hab mich drauf verlassen, daß das schon irgend jemand tun wird... :roll: )

This is a story about four people named Everybody, Somebody, Anybody, and Nobody. There was an important job to be done and Everybody was sure that Somebody would do it. Anybody could have done it, but Nobody did it. Somebody got angry about this, because it was Everybody's job. Everybody thought Anybody could do it, but Nobody realized that Everybody wouldn't do it. It ended up that Everybody blamed Somebody when Nobody did what Anybody could have done.

you see ...
 

SoeDib

Member
oc2pus schrieb:
It ended up that Everybody blamed Somebody when Nobody did what Anybody could have done.
you see ...
Nice one. Genau das wollte ich mit dem :roll: ausdrücken. Also:
Did Somebody already what Anybody could have done, or did Nobody what Everybody should have done?
 
OP
taki

taki

Advanced Hacker
@oc2pus
OK, let me be somebody. Wo gebe ich meinen Bugreport ab?
Gruß,
Andreas
 

SoeDib

Member
Datum: Wed, 16 Nov 2005 16:05:34 -0700
Vun: "Novell Webmaster" <WEBMASTER@novell.com>
An: <mich>
Betrifft: C1: Feedback forhttp://www.novell.com/linux/download/linuks/i386/update_for_9_1/base.html
Hello,
I have forwarded your message to the manager over this area of our site. If I may be of further assistance, please let me know.
Thanks,
Camille Hill
Novell Electronic Marketing Team

--Ursprüngliche Nachricht:

Das Paket kdelibs3-3.4.3-2 war gegen qt3-3.3.4, ist jetzt aber gegen qt3-3.3.5 gelinkt. Da die neue Version keine neue Release-Nummer erhielt (z.B. kdelibs3-3.3.4-3, ...-2a, ...2qt335 ), erkennen Paketmanager den Wechsel nicht, was zu verschiedensten Problemen führen kann, z.B. daß *nur* qt3-3.3.5 und *nicht* das neuere kdelibs3-3.4.3-2 installiert wird -> qt und kdelibs passen nicht zusammen.

Ist dies so beabsichtigt ?

--
:p
 

DemoFreak

Member
So, als kleiner Tip für alle, die qt gepinnt/gelockt haben: wenn man das Repository kde integriert hat, ist man seit heute Benutzer der 'KDE 3.5.0 "RC 1" Level a', womit sich das qt-Problem erübrigt. Funktioniert nach erstem Dafürhalten auch einwandfrei, sieht gut aus, und überhaupt muss man seiner Versionitis ja mal freien Lauf lassen... ;)
 

SoeDib

Member
Das Upgrade funktioniert aber nur vernünftig, wenn qt3-non-mt vorher deinstalliert wird. Wozu dient das Paket eigentlich? (Ok, ich weiß, non-mt=non-multithreading), aber ich habe keine Abhängigkeiten zu dem Paket gefunden, und kann mich nicht erinnern, es je separat installiert zu haben, es müßte also irgendwann als Abhängigkeit auf meinen Rechner gelangt sein. Bloß wofür?
 

ambkosh

Member
DemoFreak schrieb:
So, als kleiner Tip für alle, die qt gepinnt/gelockt haben: wenn man das Repository kde integriert hat, ist man seit heute Benutzer der 'KDE 3.5.0 "RC 1" Level a', womit sich das qt-Problem erübrigt. Funktioniert nach erstem Dafürhalten auch einwandfrei, sieht gut aus, und überhaupt muss man seiner Versionitis ja mal freien Lauf lassen... ;)
Tja, ich persönlich habe mit der neuen Version kein Problem und selbige eben installiert. (Leide ja auch an Versionitis)
Aber wenn man bedenkt, dass jmd ein stabiles und sicheres System braucht/will ist es schon ein ganz schönes Ding, wenn im normalen KDE-Repo plötzlich nen RC landet. So was gehört meiner Meinung nach in kde-unstable o.ä. Seh ich da jetzt was falsch?

Gruß
Kosh
 

oc2pus

Ultimate Guru
da die Diskussion nun etwas abdriftet ... mache ich hier mal zu :)

Die Erfahrung lehrt: die apt-Repositories sind sehr dynamisch, d.h. dieses Problem wird wohl bald verschwinden und wahrscheinlich gibt es dann ein neues. Und ich kann eure "Aufregung" gut verstehen.

Und seid nicht so hart in eurem Urteil, da arbeiten auch nur Menschen und zum grossen Teil auf freiwilliger Basis... die machen auch mal "Fehler".

@SoeDib
wenn du die Antwort auf deine mail hast, kontaktiere mich per PN und wir fügen die Antwort hier ein!
 
Status
Für weitere Antworten geschlossen.
Oben