# libXext lässt sich nicht emergen

## Jimini

Aloha.

Mangels Freizeit kam ich längere Zeit nicht dazu, Gentoo auf meinem Laptop zu updaten. Heute setzte ich mich endlich daran - mit fatalen Folgen :\

Zunächst bekam ich mit "emerge -avuD world" eine Liste mit 4 Blocks (recordproto, libXtst, libXext, libXxf86vm, libXinerama, libXi sind die einzigen Pakete, an die ich mich erinnere). Also deinstallierte ich die Pakete, die in den Blocks gelistet wurden, und wollte danach das world-Update durchbringen. libXext-1.0.5 wird aber zwingend benötigt und bricht beim emergen jedes Mal ab:

```
DPMS.c:40:33: error: X11/extensions/dpms.h: No such file or directory

DPMS.c:41:36: error: X11/extensions/dpmsstr.h: No such file or directory

DPMS.c:42:33: error: X11/extensions/Xext.h: No such file or directory

DPMS.c:43:36: error: X11/extensions/extutil.h: No such file or directory

DPMS.c:46: error: expected '=', ',', ';', 'asm' or '__attribute__' before '_dpms_info_data'

DPMS.c:47: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token

DPMS.c:48: error: 'DPMSExtensionName' undeclared here (not in a function)

DPMS.c:60: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'dpms_extension_hooks'

DPMS.c:76: error: expected ')' before '&' token

DPMS.c:103: warning: no previous prototype for 'DPMSGetVersion'

DPMS.c: In function 'DPMSGetVersion':

DPMS.c:104: error: 'XExtDisplayInfo' undeclared (first use in this function)

DPMS.c:104: error: (Each undeclared identifier is reported only once

DPMS.c:104: error: for each function it appears in.)

DPMS.c:104: error: 'info' undeclared (first use in this function)

DPMS.c:104: warning: implicit declaration of function 'find_display'

DPMS.c:104: warning: nested extern declaration of 'find_display'

DPMS.c:105: error: 'xDPMSGetVersionReply' undeclared (first use in this function)

DPMS.c:105: error: expected ';' before 'rep'

DPMS.c:106: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token

DPMS.c:106: warning: ISO C90 forbids mixed declarations and code

DPMS.c:106: error: 'req' undeclared (first use in this function)

DPMS.c:108: warning: implicit declaration of function 'XextCheckExtension'

DPMS.c:108: warning: nested extern declaration of 'XextCheckExtension'

DPMS.c:111: error: 'sz_xDPMSGetVersionReq' undeclared (first use in this function)

DPMS.c:111: error: 'xDPMSGetVersionReq' undeclared (first use in this function)

DPMS.c:111: error: expected expression before ')' token

DPMS.c:111: error: 'X_DPMSGetVersion' undeclared (first use in this function)

DPMS.c:114: error: 'rep' undeclared (first use in this function)

DPMS.c: At top level:

DPMS.c:128: warning: no previous prototype for 'DPMSCapable'

DPMS.c: In function 'DPMSCapable':

DPMS.c:129: error: 'XExtDisplayInfo' undeclared (first use in this function)

DPMS.c:129: error: 'info' undeclared (first use in this function)

DPMS.c:130: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token

DPMS.c:130: warning: ISO C90 forbids mixed declarations and code

DPMS.c:130: error: 'req' undeclared (first use in this function)

DPMS.c:131: error: 'xDPMSCapableReply' undeclared (first use in this function)

DPMS.c:131: error: expected ';' before 'rep'

DPMS.c:136: error: 'sz_xDPMSCapableReq' undeclared (first use in this function)

DPMS.c:136: error: 'xDPMSCapableReq' undeclared (first use in this function)

DPMS.c:136: error: expected expression before ')' token

DPMS.c:136: error: 'X_DPMSCapable' undeclared (first use in this function)

DPMS.c:140: error: 'rep' undeclared (first use in this function)

DPMS.c: At top level:

DPMS.c:152: warning: no previous prototype for 'DPMSSetTimeouts'

DPMS.c: In function 'DPMSSetTimeouts':

DPMS.c:153: error: 'XExtDisplayInfo' undeclared (first use in this function)

DPMS.c:153: error: 'info' undeclared (first use in this function)

DPMS.c:154: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token

DPMS.c:154: warning: ISO C90 forbids mixed declarations and code

DPMS.c:154: error: 'req' undeclared (first use in this function)

DPMS.c:167: error: 'sz_xDPMSSetTimeoutsReq' undeclared (first use in this function)

DPMS.c:167: error: 'xDPMSSetTimeoutsReq' undeclared (first use in this function)

DPMS.c:167: error: expected expression before ')' token

DPMS.c:167: error: 'X_DPMSSetTimeouts' undeclared (first use in this function)

DPMS.c: At top level:

DPMS.c:181: warning: no previous prototype for 'DPMSGetTimeouts'

DPMS.c: In function 'DPMSGetTimeouts':

DPMS.c:182: error: 'XExtDisplayInfo' undeclared (first use in this function)

DPMS.c:182: error: 'info' undeclared (first use in this function)

DPMS.c:183: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token

DPMS.c:183: warning: ISO C90 forbids mixed declarations and code

DPMS.c:183: error: 'req' undeclared (first use in this function)

DPMS.c:184: error: 'xDPMSGetTimeoutsReply' undeclared (first use in this function)

DPMS.c:184: error: expected ';' before 'rep'

DPMS.c:189: error: 'sz_xDPMSGetTimeoutsReq' undeclared (first use in this function)

DPMS.c:189: error: 'xDPMSGetTimeoutsReq' undeclared (first use in this function)

DPMS.c:189: error: expected expression before ')' token

DPMS.c:189: error: 'X_DPMSGetTimeouts' undeclared (first use in this function)

DPMS.c:193: error: 'rep' undeclared (first use in this function)

DPMS.c: At top level:

DPMS.c:208: warning: no previous prototype for 'DPMSEnable'

DPMS.c: In function 'DPMSEnable':

DPMS.c:209: error: 'XExtDisplayInfo' undeclared (first use in this function)

DPMS.c:209: error: 'info' undeclared (first use in this function)

DPMS.c:210: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token

DPMS.c:210: warning: ISO C90 forbids mixed declarations and code

DPMS.c:210: error: 'req' undeclared (first use in this function)

DPMS.c:214: error: 'sz_xDPMSEnableReq' undeclared (first use in this function)

DPMS.c:214: error: 'xDPMSEnableReq' undeclared (first use in this function)

DPMS.c:214: error: expected expression before ')' token

DPMS.c:214: error: 'X_DPMSEnable' undeclared (first use in this function)

DPMS.c: At top level:

DPMS.c:225: warning: no previous prototype for 'DPMSDisable'

DPMS.c: In function 'DPMSDisable':

DPMS.c:226: error: 'XExtDisplayInfo' undeclared (first use in this function)

DPMS.c:226: error: 'info' undeclared (first use in this function)

DPMS.c:227: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token

DPMS.c:227: warning: ISO C90 forbids mixed declarations and code

DPMS.c:227: error: 'req' undeclared (first use in this function)

DPMS.c:231: error: 'sz_xDPMSDisableReq' undeclared (first use in this function)

DPMS.c:231: error: 'xDPMSDisableReq' undeclared (first use in this function)

DPMS.c:231: error: expected expression before ')' token

DPMS.c:231: error: 'X_DPMSDisable' undeclared (first use in this function)

DPMS.c: At top level:

DPMS.c:243: warning: no previous prototype for 'DPMSForceLevel'

DPMS.c: In function 'DPMSForceLevel':

DPMS.c:244: error: 'XExtDisplayInfo' undeclared (first use in this function)

DPMS.c:244: error: 'info' undeclared (first use in this function)

DPMS.c:245: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token

DPMS.c:245: warning: ISO C90 forbids mixed declarations and code

DPMS.c:245: error: 'req' undeclared (first use in this function)

DPMS.c:249: error: 'DPMSModeOn' undeclared (first use in this function)

DPMS.c:250: error: 'DPMSModeStandby' undeclared (first use in this function)

DPMS.c:251: error: 'DPMSModeSuspend' undeclared (first use in this function)

DPMS.c:252: error: 'DPMSModeOff' undeclared (first use in this function)

DPMS.c:256: error: 'sz_xDPMSForceLevelReq' undeclared (first use in this function)

DPMS.c:256: error: 'xDPMSForceLevelReq' undeclared (first use in this function)

DPMS.c:256: error: expected expression before ')' token

DPMS.c:256: error: 'X_DPMSForceLevel' undeclared (first use in this function)

DPMS.c: At top level:

DPMS.c:268: warning: no previous prototype for 'DPMSInfo'

DPMS.c: In function 'DPMSInfo':

DPMS.c:269: error: 'XExtDisplayInfo' undeclared (first use in this function)

DPMS.c:269: error: 'info' undeclared (first use in this function)

DPMS.c:270: error: expected '=', ',', ';', 'asm' or '__attribute__' before '*' token

DPMS.c:270: warning: ISO C90 forbids mixed declarations and code

DPMS.c:270: error: 'req' undeclared (first use in this function)

DPMS.c:271: error: 'xDPMSInfoReply' undeclared (first use in this function)

DPMS.c:271: error: expected ';' before 'rep'

DPMS.c:276: error: 'sz_xDPMSInfoReq' undeclared (first use in this function)

DPMS.c:276: error: 'xDPMSInfoReq' undeclared (first use in this function)

DPMS.c:276: error: expected expression before ')' token

DPMS.c:276: error: 'X_DPMSInfo' undeclared (first use in this function)

DPMS.c:280: error: 'rep' undeclared (first use in this function)

make[2]: *** [DPMS.lo] Error 1

make[2]: Leaving directory `/var/tmp/portage/x11-libs/libXext-1.0.5/work/libXext-1.0.5/src'

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory `/var/tmp/portage/x11-libs/libXext-1.0.5/work/libXext-1.0.5'

make: *** [all] Error 2

 *

 * ERROR: x11-libs/libXext-1.0.5 failed.

 * Call stack:

 *               ebuild.sh, line   49:  Called src_compile

 *             environment, line 3202:  Called x-modular_src_compile

 *             environment, line 3987:  Called x-modular_src_make

 *             environment, line 4026:  Called die

 * The specific snippet of code:

 *       emake || die "emake failed"

 *  The die message:

 *   emake failed

```

revdep-rebuild meldet natürlich, dass die Library benötigt wird und will sie neu emergen, was aber nicht funktioniert. Ich habe jetzt ein paar Stunden gegoogelt, aber irgendwie nichts zu dem Thema gefunden. Auf meinem Desktop wird libXext merkwürdigerweise anstandslos gebaut.

emerge --info:

```
Portage 2.1.6.13 (default/linux/amd64/10.0/desktop, gcc-4.1.2, glibc-2.9_p20081201-r2, 2.6.30-gentoo-r5 x86_64)

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

System uname: Linux-2.6.30-gentoo-r5-x86_64-Intel-R-_Core-TM-2_Duo_CPU_P8400_@_2.26GHz-with-gentoo-1.12.13

Timestamp of tree: Thu, 12 Nov 2009 16:15:02 +0000

ccache version 2.4 [disabled]

app-shells/bash:     4.0_p28

dev-java/java-config: 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/ccache:     2.4-r7

dev-util/cmake:      2.6.4

sys-apps/baselayout: 1.12.13

sys-apps/sandbox:    1.6-r2

sys-devel/autoconf:  2.13, 2.63-r1

sys-devel/automake:  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="amd64"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-O2 -pipe"

CHOST="x86_64-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/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"

CXXFLAGS="-O2 -pipe"

DISTDIR="/usr/portage/distfiles"

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

GENTOO_MIRRORS="[...]"

LDFLAGS="-Wl,-O1"

LINGUAS="de"

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://10.0.0.1/gentoo-portage"

USE="X a52 aac acl acpi alsa amd64 berkdb bluetooth branding bzip2 cairo cdr cli consolekit cracklib crypt cups dbus debug dri dts dvd dvdr eds embedded emboss encode evo fam firefox flac fortran gdbm gif glitz gnome gpm gstreamer gtk hal iconv java jpeg kde kqemu ldap libnotify lm_sensors mad mikmod mmx mng modules mp3 mp4 mpeg mtp mudflap multilib mysql ncurses nls nptl nptlonly nvidia ogg opengl openmp pam pcre pdf perl png ppds pppd python qt3 qt3support qt4 quicktime readline reflection samba sdl session spell spl sql sse sse2 ssl startup-notification svg symlink sysfs tcpd thunar tiff tordns truetype unicode usb vorbis webkit x264 xml xorg xulrunner xv xvid xvmc zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci 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="evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de" USERLAND="GNU" VIDEO_CARDS="nvidia"

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

Ich habe momentan keine Ahnung, wie ich den Fehler beheben kann und wäre für Vorschläge wirklich dankbar.

Ich vermute aber, dass ich beim Versuch, das world-Update zum Laufen zu bringen, irgendwas zerschossen habe.

Sollte ich irgendwas vergessen / übersehen haben, so reiche ich es natürlich gern nach.

MfG Jimini

----------

## Max Steel

Evtl musst du libxcb remergen und lafilefixer [--justfixit] ausführen.

----------

## Josef.95

Schau doch mal ob diese Updates evtl auch noch anstehen..

https://forums.gentoo.org/viewtopic-p-6002522.html?sid=16cd29967acfd8e23839a2f8789ef6e5#6002522

----------

## Jimini

Danke für die Antworten :)

Das Problem mit dem libxcb-Update vor einiger Zeit hatte ich damals schon gelöst - der lafilefixer läuft anstandslos durch.

MfG Jimini

Edit: was ich hätte dazuschreiben sollen: ich habe das System ungefähr 3-5 Wochen nicht mehr geupdated.

Und noch ein Edit:

emerge -uD world:

```
[blocks B     ] <x11-libs/libXext-1.0.99 ("<x11-libs/libXext-1.0.99" is blocking x11-proto/xextproto-7.1.1)

[blocks B     ] <x11-libs/libXinerama-1.0.99.1 ("<x11-libs/libXinerama-1.0.99.1" is blocking x11-proto/xineramaproto-1.2)

[blocks B     ] <x11-libs/libXtst-1.0.99.2 ("<x11-libs/libXtst-1.0.99.2" is blocking x11-proto/recordproto-1.14)

[blocks B     ] <x11-libs/libXxf86vm-1.0.99.1 ("<x11-libs/libXxf86vm-1.0.99.1" is blocking x11-proto/xf86vidmodeproto-2.3)

Total: 77 packages (56 upgrades, 1 downgrade, 16 new, 3 in new slots, 1 reinstall, 1 interactive), Size of downloads: 493,434 kB

Conflict: 4 blocks (4 unsatisfied)

 * Error: The above package list contains packages which cannot be

 * installed at the same time on the same system.

  ('installed', '/', 'x11-proto/xextproto-7.1.1', 'nomerge') pulled in by

    x11-proto/xextproto required by ('ebuild', '/', 'media-plugins/gst-plugins-xvideo-0.10.24', 'merge')

    x11-proto/xextproto required by ('installed', '/', 'x11-terms/eterm-0.9.5', 'nomerge')

    x11-proto/xextproto required by world

    (and 4 more)

  ('installed', '/', 'x11-proto/xf86vidmodeproto-2.3', 'nomerge') pulled in by

    >=x11-proto/xf86vidmodeproto-2.2.99.1 required by ('ebuild', '/', 'x11-base/xorg-server-1.7.1', 'merge')

    x11-proto/xf86vidmodeproto required by world

    x11-proto/xf86vidmodeproto required by ('ebuild', '/', 'x11-libs/libXxf86vm-1.0.2', 'merge')

  ('installed', '/', 'x11-proto/xineramaproto-1.2', 'nomerge') pulled in by

    >=x11-proto/xineramaproto-1.1.3 required by ('ebuild', '/', 'x11-base/xorg-server-1.7.1', 'merge')

    x11-proto/xineramaproto required by ('ebuild', '/', 'x11-apps/xdm-1.1.8', 'merge')

    x11-proto/xineramaproto required by world

    (and 1 more)

  ('ebuild', '/', 'x11-libs/libXext-1.0.5', 'merge') pulled in by

    x11-libs/libXext required by ('installed', '/', 'x11-apps/xdpyinfo-1.0.3', 'nomerge')

    x11-libs/libXext required by ('installed', '/', 'x11-libs/qt-gui-4.5.3-r2', 'nomerge')

    x11-libs/libXext required by ('installed', '/', 'media-libs/imlib2-1.4.2-r1', 'nomerge')

    (and 94 more)

  ('ebuild', '/', 'x11-libs/libXxf86vm-1.0.2', 'merge') pulled in by

    x11-libs/libXxf86vm required by ('installed', '/', 'x11-libs/wxGTK-2.8.10.1-r1', 'nomerge')

    x11-libs/libXxf86vm required by ('installed', '/', 'kde-base/ksysguard-4.3.1', 'nomerge')

    x11-libs/libXxf86vm required by ('installed', '/', 'kde-base/kcminit-4.3.1', 'nomerge')

    (and 58 more)

  ('installed', '/', 'x11-proto/recordproto-1.14', 'nomerge') pulled in by

    x11-proto/recordproto required by world

    x11-proto/recordproto required by ('ebuild', '/', 'x11-libs/libXtst-1.0.3', 'merge')

    >=x11-proto/recordproto-1.13.99.1 required by ('ebuild', '/', 'x11-base/xorg-server-1.7.1', 'merge')

  ('ebuild', '/', 'x11-libs/libXinerama-1.0.3', 'merge') pulled in by

    x11-libs/libXinerama required by ('ebuild', '/', 'x11-apps/xdm-1.1.8', 'merge')

    x11-libs/libXinerama required by ('installed', '/', 'x11-libs/wxGTK-2.8.10.1-r1', 'nomerge')

    x11-libs/libXinerama required by ('ebuild', '/', 'app-emulation/virtualbox-bin-3.0.8', 'merge')

  ('ebuild', '/', 'x11-libs/libXtst-1.0.3', 'merge') pulled in by

    x11-libs/libXtst required by ('installed', '/', 'net-misc/vnc-4.1.3-r2', 'nomerge')

    x11-libs/libXtst required by ('installed', '/', 'kde-base/khotkeys-4.3.1', 'nomerge')

    x11-libs/libXtst required by ('installed', '/', 'media-tv/tvbrowser-2.7.1', 'nomerge')

    (and 4 more)
```

emerge -u world beginnt anstandslos, bricht dann aber beim ersten Paket - libXext - ab.

----------

## Josef.95

```
('installed', '/', 'x11-proto/xf86vidmodeproto-2.3', 'nomerge') pulled in by

    >=x11-proto/xf86vidmodeproto-2.2.99.1 required by ('ebuild', '/', 'x11-base/xorg-server-1.7.1', 'merge')
```

Du scheinst da eine Mischung aus stable und testing zu fahren, gibt es einen triftigen Grund schon xorg-server-1.7.1 zu verwenden?

hast du den demaskiert?

----------

## Max Steel

Seltsamerweiße hab ich solche Probleme meist dann wenn ich xorg-x11 nicht installiere sondern nur xorg-server und dann einfach ein WM meiner Wahl drüberbügel. Und danach update.

Also installiere ich erst komplett xorg-x11.

Aber ob das so einfach wahrheitsgemäß ist kann ich auch nicht sagen.

----------

## Jimini

Josef, du lagst richtig - ich hatte von der libxcb-Geschichte noch Überbleibsel in Form einiger x11-libs in der package.keywords demaskiert. Ich vermute mal, dass die Probleme daher kommen, im Moment läuft das Update. Mal schauen, ob es komplett durchläuft.

Danke schonmal euch beiden für die Hilfestellung :)

MfG Jimini

----------

## musv

Ich hatte beim letzten xorg-Server-Update (auf 1.7) so ein ähnliches Problem:

libX11 ließ sich nicht upgraden, weil es libXext (und einige andere benötigte). Und die ließen sich nicht upgraden, weil sie erst die libX11 haben wollten. Ein klassisches Henne-Ei-Problem. Auf meinem 64bit-Rechner ging's problemlos, auf meiner 32bit-Notebook hatte ich besagtes Problem. Die Lösung lag bei mir darin, dass ich die fehlenden Libs vom lib32-Verzeichnis des 64-bit-Rechners ins /usr/lib vom Notebook rüberkopierte. Nicht schön, aber war nach einigen Stunden Quälerei die einzige funktionierende Möglichkeit.

----------

