After updating libxcb from 1.1.90.1 to 1.4-r1, most of my graphical apps (e.g. xterm) fail to work, printing the following error instead: symbol lookup error: /usr/lib/libxcb-xlib.so.0: undefined symbol: _xcb_lock_io The corresponding unlock seems to be missing as well: $ ldd -r /usr/lib/libxcb-xlib.so.0 undefined symbol: _xcb_lock_io (/usr/lib/libxcb-xlib.so.0) undefined symbol: _xcb_unlock_io (/usr/lib/libxcb-xlib.so.0) linux-gate.so.1 => (0xffffe000) libxcb.so.1 => /usr/lib/libxcb.so.1 (0xb7fd4000) libc.so.6 => /lib/libc.so.6 (0x45a73000) libXau.so.6 => /usr/lib/libXau.so.6 (0xb7fd0000) libXdmcp.so.6 => /usr/lib/libXdmcp.so.6 (0x45458000) /lib/ld-linux.so.2 (0x44b0a000) I read http://www.gentoo.org/proj/en/desktop/x/x11/libxcb-1.4-upgrade-guide.xml so I believe I know the path to get rid of my libxcb-xlib.so and the problems it causes. Both the guide and the elog message seem to imply that because of the kept library, my system should be in a usable state. This is not the case. And the number of broken packages is quite large, so I'm not looking forward to remerging all of these before I can use my system again. This should be addressed before stabilization, I believe. I had hoped that the symbols from libxcb-xlib.so.0 wouldn't be needed any more. So I replaced that file with a symlink to libxcb in an attempt to avoid undefined symbols. Unfortunately the result wasn't that good, as /usr/lib/libX11.so.6 uses symbols like xcb_xlib_lock which came from that library as far as I can tell. So simply replacing the file with some magic symlink probably won't solve the issue. Any better thoughts?
Remerging libX11 seemed to solve the immediate issues, now I can start applications without getting these error messages. Maybe elog and the guide should say so.
*** Bug 286386 has been marked as a duplicate of this bug. ***
Maybe: emerge -1avuDN libX11 would be better for also rebuilding other broken tools like libXext, that breaks lots of compilations like kdelibs one (see bug 286384 )
The guide does give a precise order to update the packages, it's all in the first code listing. And the second code listing rebuilds libX11 and libXext again (while it's not even necessary). It's all there, I don't see how it could be improved. When libxcb does go stable, we'll have a proper news item so that users hopefully read the guide before doing the update. Thanks
Sorry, maybe I didn't copy+paste second command properly
*** Bug 286384 has been marked as a duplicate of this bug. ***