[Xcb] Opensuse 11.2 missing xcb_xlib_lock

Josh Triplett josh at joshtriplett.org
Wed Apr 14 10:27:45 PDT 2010


On Wed, Apr 14, 2010 at 06:02:30PM +0100, Hearns, John wrote:
> > I would suggest in particular that you check the following:
> > 
> > nm -D /usr/lib/libX11.so.6 | grep xcb_take_socket
> > nm -D /usr/lib/libX11.so.6 | grep xcb_xlib_lock
> > 
> > Exactly one of those should produce output, namely a line like this:
> > 
> >                  U xcb_take_socket
> > 
> 
> xcb_take_socket is returned - so libX11.so.6 is up to date

OK, good.

> > I'd also suggest checking "nm -D /usr/lib/libxcb-xlib.so.0".  That
> > should show that the library does not define any interesting symbols,
> > and in particular that it does not contain xcb_xlib_lock.  That would
> > suggest an empty compatibility library, as I suggested above.
> 
> > nm -D libxcb-xlib.so.0
> 0000000000201000 A __bss_start
> 0000000000201000 A _edata
> 0000000000201000 A _end

Good; no actual symbols, just library boilerplate.

> > So, if as expected you have an Xlib that wants xcb_take_socket and an
> > empty libxcb-xlib.so.0, then you need to track down what library or
> > application does try to use xcb_xlib_lock.  For that, you can use:
> > 
> > nm -D /path/to/application | grep xcb_xlib_lock
> > 
> 

I take it that command produced no output?  Good.

> > to find out if the application tried to use that symbol directly.  You
> > can also use "ldd /path/to/application" to find out the full list of
> > libraries the application pulls in, and check likely culprits the same
> > way.
> > 
> Will do, and thanks for your advice.

No problem; good luck.

- Josh Triplett


More information about the Xcb mailing list