PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : "Relocation Error" nach Kompilieren



micha
15.09.02, 12:03
Hi,

nachdem ich mein Gentoo-System von 1.1a auf 1.4 mit gcc-3.2 geupdatet hab, funktionieren manche Programme nicht mehr. So wie?s bis jetzt aussieht, betrifft es nur Qt-Programme ( z.Z. sim, kdevelop ).
Wenn ich die Programme starten will, bekomme ich folgenden Fehler:

sim: relocation error: sim: undefined symbol: __ti7QWidget
bzw.
kdevelop: relocation error: /usr/kde/3/lib/libkdevelopqextmdi.so.2: undefined symbol: __ti6QLabel

Als Optimierung bei dem gcc-3.2 hab ich -march=athlon -O3 -pipe genommen.
Sim dann nochmal mit -march=i686 -O2, hat aber nichts gebracht.

Kennt jemand diesen Fehler, und wenn ja, an was kann es liegen ?

Gruß micha

Basti_litho
15.09.02, 13:43
Ich schätze du wirst deine KDE Pakete neu übersetzen müssen.

Der GCC3.2 ist gerade bei C++-Programmen nicht kompatibel mit älteren Gcc3x.
Beim GCC3.2 haben die einige änderungen an der ABI vorgenommen, d.h. alle C++-Programme müssen neu kompiliert werden.



Gruß,
Basti

micha
15.09.02, 14:13
Original geschrieben von Basti_litho
Der GCC3.2 ist gerade bei C++-Programmen nicht kompatibel mit älteren Gcc3x.


Mhm, auf meinem alten System war ein gcc der Version 2.95.3.
Nach dem Update auf den neuen Compiler wurden alle Pakete damit neu übersetzt.
Dann dürften die anderen KDE-Programme ja auch nicht laufen, oder ?

Gruß micha

Basti_litho
15.09.02, 15:51
Ja.

Schade, naja wäre ja auch zu leicht gewesen. :D

Gruß,
Basti

micha
15.09.02, 17:14
Hehe, na ja, es wird noch besser:

Ich bekomme den Fehler nur, wenn ich aus einem xterm heraus sim starte. Wenn ich auf bspw. tty1 das DISPLAY exportiere und dann starte, läufts ??
Egal, ich hab jetzt sim nochmal ohne jegliche Optimierung kompiliert und jetzt scheints zu laufen.

Gruß micha

Basti_litho
15.09.02, 17:34
Ist schon lustig was man für seltsame fehler bekommt wenn man ein paar optimierung einsetzt(das waren ja nun auch noch wirklich sehr softe optimierungen).

Naja, hauptsache es geht. :)

Gruß,
Basti