# kdelibs compile Fehler

## BuzzDee

Hallo,

ich hab seit ein paar Tagen ein Problem beim Update und bin grad etwas am Ende mit meinem Latein. Bei emerge von kdelibs bricht der Vorgang ab.

```

[ 42%] Built target kunittestmodrunner

[ 42%] Generating settings.h, settings.cpp

/var/tmp/portage/kde-base/kdelibs-4.3.1-r2/work/kdelibs-4.3.1_build/bin/kconfig_compiler: symbol lookup error: /usr/lib/qt4/libQtXml.so.4: undefined symbol: _ZNK7QString7indexOfERK13QLatin1StringiN2Qt15CaseSensitivityE

make[2]: *** [dnssd/settings.h] Fehler 127

make[1]: *** [dnssd/CMakeFiles/kdnssd.dir/all] Fehler 2

make[1]: *** Warte auf noch nicht beendete Prozesse...

[ 42%] Built target genshortcutents

make: *** [all] Fehler 2

 *

 * ERROR: kde-base/kdelibs-4.3.1-r2 failed.

 * Call stack:

 *               ebuild.sh, line   49:  Called src_compile

 *             environment, line 3699:  Called kde4-base_src_compile

 *             environment, line 2831:  Called cmake-utils_src_compile

 *             environment, line 1025:  Called _execute_optionaly 'src_compile'

 *             environment, line  408:  Called enable_cmake-utils_src_compile

 *             environment, line 1394:  Called cmake-utils_src_make

 *             environment, line 1044:  Called die

 * The specific snippet of code:

 *           emake "$@" || die "Make failed!";

 *  The die message:

 *   Make failed!

```

emerge -info

```

Portage 2.1.6.13 (default/linux/x86/10.0, gcc-4.3.4, glibc-2.9_p20081201-r2, 2.6.30-gentoo-r6 i686)

=================================================================

System uname: Linux-2.6.30-gentoo-r6-i686-Intel-R-_Core-TM-2_CPU_T5600_@_1.83GHz-with-gentoo-1.12.13

Timestamp of tree: Fri, 06 Nov 2009 19:20:01 +0000

app-shells/bash:     4.0_p28

dev-java/java-config: 1.3.7-r1, 2.1.9-r1

dev-lang/python:     2.4.6, 2.5.4-r3, 2.6.2-r1

dev-python/pycrypto: 2.0.1-r8

dev-util/cmake:      2.6.4-r3

sys-apps/baselayout: 1.12.13

sys-apps/sandbox:    1.6-r2

sys-devel/autoconf:  2.13, 2.63-r1

sys-devel/automake:  1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2

sys-devel/binutils:  2.18-r3

sys-devel/gcc-config: 1.4.1

sys-devel/libtool:   2.2.6a

virtual/os-headers:  2.6.27-r2

ACCEPT_KEYWORDS="x86"

CBUILD="i686-pc-linux-gnu"

CFLAGS="-O2 -march=i686 -pipe"

CHOST="i686-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d"

CXXFLAGS="-O2 -march=i686 -pipe"

DISTDIR="/usr/portage/distfiles"

FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch"

GENTOO_MIRRORS="ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo http://linux.rz.ruhr-uni-bochum.de/download/gentoo-mirror/ http://ftp.uni-erlangen.de/pub/mirrors/gentoo ftp://ftp.join.uni-muenster.de/pub/linux/distributions/gentoo "

LC_ALL="de_DE.UTF-8"

LDFLAGS="-Wl,-O1"

LINGUAS="de"

MAKEOPTS="-j2"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"

USE="X acl alsa arts berkdb bzip2 cli cracklib crypt cups dbus dri fortran gdbm gpm gtk iconv kde mikmod modules mp3 mudflap ncurses nls nptl nptlonly ogg opengl openmp pam pcre perl pppd python qt3 qt3support qt4 readline reflection session spl ssl sysfs syslog tcpd unicode vorbis x86 xorg zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" USERLAND="GNU" VIDEO_CARDS="radeon"

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY

```

gcc-config -l

```

 [1] i686-pc-linux-gnu-3.3.6

 [2] i686-pc-linux-gnu-4.1.2

 [3] i686-pc-linux-gnu-4.3.4 *

```

emerge -avt kdelibs

```

These are the packages that would be merged, in reverse order:

Calculating dependencies... done!

[nomerge      ] kde-base/kdelibs-4.3.1-r2 [3.5.10-r6] USE="acl alsa bzip2 handbook nls opengl semantic-desktop ssl -3dnow (-altivec) (-aqua) -bindist -debug -doc -fam -jpeg2k (-kdeprefix) -kerberos -mmx -openexr -spell -sse -sse2 -test -zeroconf"

[ebuild  N    ]  kde-base/ktimezoned-4.3.1  USE="(-aqua) -debug (-kdeprefix)" 0 kB

[ebuild  N    ]  kde-base/kde-env-4.3.1  USE="(-aqua) (-kdeprefix)" 0 kB

[ebuild  NS   ]  kde-base/kdebase-data-4.3.1 [3.5.10] USE="(-aqua) (-kdeprefix)" 0 kB

[ebuild  N    ]   kde-base/libknotificationitem-4.3.1  USE="(-aqua) -debug (-kdeprefix)" 0 kB

[ebuild  NS   ]    kde-base/kdelibs-4.3.1-r2 [3.5.10-r6] USE="acl alsa bzip2 handbook nls opengl semantic-desktop ssl -3dnow (-altivec) (-aqua) -bindist -debug -doc -fam -jpeg2k (-kdeprefix) -kerberos -mmx -openexr -spell -sse -sse2 -test -zeroconf" 0 kB

Total: 5 packages (3 new, 2 in new slots), Size of downloads: 0 kB

```

Ich hab bereits alles was qt heißt neu gebaut, ohne Erfolg. Hab evt. noch jemand eine Idee oder einen Ansatz für mich?

----------

## Max Steel

evtl ist der Übeltäter pyqt4 oder pykde4

Dazu sei gesagt:

Wenn qt-4.6* Dann muss PyQT4-4.6* installiert werden.

Wenn qt-4.5* Dann PyQT4-4.5*

----------

## BuzzDee

Es ist qt4.5.*. PyQt4 hab ich auch schon neu gebaut, pykde4 ist von kdelibs abhängig, also noch gar nicht installiert.

----------

## Max Steel

Hmmm vll mal revdep-rebuild ausführn?

qt-xmlpatterns auch neugebaut, richtig?

Edith:

Achja, unter Umständen musst du vorher lafilefixer (--justfixit) ausführn...

----------

## BuzzDee

revdep-rebuild bringt bei dem Problem nichts, qt-xmlpatterns ist nicht installiert, ist aber dafür nicht zuständig. Die Datei libQtXml.so.4 kommt von qt-core.

----------

## franzf

 *BuzzDee wrote:*   

> Die Datei libQtXml.so.4 kommt von qt-core.

 

Und hast du qt-core schon neu gebaut?

An PyQt4 liegt es definitiv nicht, da man gegen Python-Packages nicht linkt, die werden wenn dann höchstens durch ein Python-Script (Extension/Plugin/whatever) zur Laufzeit geladen. Allerhöchstens man schreibt selber eine Python-Erweiterung. Die ist aber nicht in kdelibs enthalten, die kommt separat mit pykde4.

Und "qt4.5.*" hilft nicht weiter, welche Version ist es denn genau?

Im übrigen kann man PyQt4-4.6 sehr wohl mit qt-4.5 bauen. PyQt4-4.6 ist ein stable release! Es wäre ein Unding wenn dieses eine beta von qt4 verlagen würde!

----------

## BuzzDee

Ja, qt-core hab ich neu gebaut, version ist 4.5.3-r2. Kdelibs ist version 4.3.1-r2

----------

## Max Steel

 *franzf wrote:*   

> Im übrigen kann man PyQt4-4.6 sehr wohl mit qt-4.5 bauen. PyQt4-4.6 ist ein stable release! Es wäre ein Unding wenn dieses eine beta von qt4 verlagen würde!

 

Wenn man das kann... Okay, dankesehr, ich dachte eben, weil man pyqt4-4.5 nicht mit qt-4.6 baun kann, das es auch umgekehrt gilt. Aber wenn das funktioniert.

War wohl ein Kurzschluss von mir ^^

Sorry von mir.

----------

## franzf

 *BuzzDee wrote:*   

> Ja, qt-core hab ich neu gebaut, version ist 4.5.3-r2. Kdelibs ist version 4.3.1-r2

 

Eigentlich sollte es da ja keine Probleme geben, wenn liQtXml und libQtCore (->Q(Latin1)String) miteinander kompiliert wurden.

Demnach bleibt eigentlich nur noch die Option, dass bei dir irgendwo noch ein anderes libQtCore bzw. libQtXml im LDPATH rumschwirrt!

Qt reagiert da sehr sensibel  :Wink: 

Machst du mal ein

```
ldd /var/tmp/portage/kde-base/kdelibs-4.3.1-r2/work/kdelibs-4.3.1_build/bin/kconfig_compiler
```

Und sagst uns, woher er sich das libQtXml und das libQtCore nimmt. Am besten einfach den ganzen "ldd"-Output posten.

Sollte das dann nichts bringen, musst du wohl oder über ein find auf deinen LDPATH loslassen...

----------

## BuzzDee

Es gibt noch eine libQtXml.so im Verzeichnis von Google-earth , aber die sollte er ja wohl nicht benutzen.

Hier die Ausgabe von ldd:

```

sh-4.0# ldd /var/tmp/portage/kde-base/kdelibs-4.3.1-r2/work/kdelibs-4.3.1_build/bin/kconfig_compiler

        linux-gate.so.1 =>  (0xffffe000)

        libQtCore.so.4 => /usr/lib/qt4/libQtCore.so.4 (0xb7e03000)

        libpthread.so.0 => /lib/libpthread.so.0 (0xb7dbe000)

        libQtXml.so.4 => /usr/lib/qt4/libQtXml.so.4 (0xb7d8a000)

        libstdc++.so.6 => /usr/lib/gcc/i686-pc-linux-gnu/4.3.4/libstdc++.so.6 (0xb7c9e000)

        libm.so.6 => /lib/libm.so.6 (0xb7c78000)

        libgcc_s.so.1 => /usr/lib/gcc/i686-pc-linux-gnu/4.3.4/libgcc_s.so.1 (0xb7c69000)

        libc.so.6 => /lib/libc.so.6 (0xb7b2c000)

        libz.so.1 => /lib/libz.so.1 (0xb7b1a000)

        libgthread-2.0.so.0 => /usr/lib/libgthread-2.0.so.0 (0xb7b14000)

        librt.so.1 => /lib/librt.so.1 (0xb7b0b000)

        libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0xb7a3a000)

        libdl.so.2 => /lib/libdl.so.2 (0xb7a35000)

        /lib/ld-linux.so.2 (0xb7fdb000)

```

----------

## franzf

Komisch...

Der Fehler den du bekommst ergibt sich eigentlich dann, wenn 2 Qt-Libs geladen werden, die nicht miteinander gebaut wurden. Da versteckt sich dann immer eine Lib irgenwo im System, die eigentlich nicht da sein sollte.

Kannst ja mal dein build-log auf nopaste.info posten. Ein "Fehler 1" seh ich nicht, da läuft vorher auch noch was falsch.

----------

## BuzzDee

Ich kann keinen anderen Fehler finden, hier ist das komplette log: http://pastebin.com/m72bf9590

----------

## 69719

Poste mal bitte die Ausgabe von

```

readelf -aW /usr/lib64/qt4/libQtXml.so

```

.

----------

## BuzzDee

Ich verzichte jetzt mal auf das lib64, aber auf die /usr/lib/libQtXml.so bekomme ich das: http://pastebin.com/m4c8f39bf

Das Symbol ist enthalten, was darauf schließen lässt, dass er sich eine falsche LibQtXml greift, aber ich finde keine andere. 

sh-4.0# ldconfig -pn |grep -i libqtxm

```

libQtXml.so.4 (libc6) => /usr/lib/qt4/libQtXml.so.4

libQtXml.so (libc6) => /usr/lib/qt4/libQtXml.so

```

----------

## 69719

Ich wundern ein wenig die 386 definitionen, trotz das du 686 cflags gesetzt und dieses Paket neu gebaut hast. Kannst du mal bitte auch

```

bzcat /var/db/pkg/x11-libs/qt-core-4.5.3-r2/environment.bz2

```

posten?

----------

## BuzzDee

Aber natürlich: http://pastebin.com/m4a6e78db

----------

## 69719

Ich finde jedenfalls nichts auffälliges. Ich würde eventuell ein

```

emerge -ev world

```

versuchen, dauert zwar lange, aber vielleicht ist der Fehler dann weg.

----------

