This Time Self-Hosted
dark mode light mode Search

XCB on FreeBSD: case closed!

Gentoo/FreeBSD logo by Marius Morawski

No I’m not referring to the American title for Detective Conan (although in the past I used to misquote titles of episodes and animes for my blog titles), but just saying that finally a released libxcb works fine on FreeBSD (specifically, Gentoo/FreeBSD).

Today XCB 1.0 was released (and thanks to Donnie is already in portage – beside, thanks for getting the accent right :). This version works out of the box on FreeBSD, as it uses the new libpthread-stubs to get the stubs needed for it to run.

Now, Florent, I’d like to ask you the favour to double check what you post on comments: you got at least one contact from a FreeBSD derivative project, okay not for X11, but you were πŸ™‚ And not always when tarballs are released by XOrg project they were already checked and fixed by Eric, like it happened for libxcb’s release candidates.

And yes, as you workaround a lot of issues from within ports, I’m mostly not contacting you, but instead trying to get it working out of the box, although that often is not as easy as one could hope (like now with Firefox).

Comments 5
  1. Well, you mentioned Gentoo/FreeBSD but I didn’t know you contacted me as a Gentoo/FreeBSD developer. Anyway, I “fixed” the comment :-)I’m in the middle of updating xcb ports to 1.0 but it seems that when compiling libpthread-stubs, autotools do an implicit s/-lpthread/-pthread/ on PKG_CONFIG_LIBS which results in “Libs: … -pthread-stubs” in pthread-stubs.pc.That’s a bit weird. Thanks for working on this anyway, xcb has been kind of a nightmare these last few weeks πŸ™‚

  2. What do I have to do to get xcb running?Is enabling the xcb use flag and recompiling xlib/mesa enough? As xcb is meant as a replacement for xlib, can I unmerge xlib even?

  3. > As xcb is meant as a replacement for xlib, can I unmerge xlib even?Not at this point really. Many libraries and applications higher in the stack still work against libX11 and aren’t ported over to XCB, as such you need libX11 for a usable system still.However, if libX11 is emerged with the xcb USE flag, what should happen afaik is that libX11 essentially will be just a (more or less) lightweight compatibility wrapper to XCB and that gives libraries/applications a transition period, while you can already use straight XCB for things that make use of it.See… for some details.

  4. Mart, you’re mostly right, except that libX11 will never be a “lightweight” anything. πŸ˜‰ Xlib/XCB is identical to non-XCB-enabled Xlib, except that a small portion of its guts have been ripped out and replaced with XCB.On a related note: michael, you shouldn’t need to recompile Mesa (unless you still have 6.5.1 or earlier, which had a locking bug) or any other Xlib-using application or library. However, some libraries, including Mesa, have partial ports to XCB available. I think all of these are highly experimental still, but testing would be welcomed.Florent, how has XCB been a nightmare? And is it better for you now?Most importantly: Diego, thanks much for your contributions. Portability is really important for XCB, and there aren’t that many platforms I can test on personally.

  5. Jamey: well we had first issues with pthread stubs missing in FreeBSD <= 7.x and now it seems there are quite a few locking issues with libX11 when compiled with XCB support so it’s off by default until proven stable.Don’t hesitate to contact me either via email on IRC. Google should give you the way πŸ™‚

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.