How to start with X?

Dave Howorth xorg at
Thu Jan 23 16:27:19 UTC 2020

On Wed, 22 Jan 2020 18:26:32 +0100
Emanuele Petriglia <inbox at> wrote:

> Hi!
> I would like to learn how to create a C graphical application without
> using some toolkit for hobby. I know that there are two main
> libraries: Xlib and xcb. The first is old but has a lot of
> documentation, the second is newer but less documented than the
> first. So I was thinking to learn Xlib and then xcb.
> I found this book about Xlib: "XLIB Programming Manual" of Adrian Nye
> published on 1994. I do not found any other recent book. Is it good to
> start with Xlib even is it old?

If you want to do anything more than 'play around' in order to learn
the concepts then you might be better to start with a toolkit. That is,
if you want to build any real application, start from a toolkit.

But if you do want to start from basics then you may as well start with
Xlib IMHO. Once you understand that, you can move on to XCB if
necessary or to a toolkit.

Having said all that, I learned X many years ago starting with that book
and the accompanying XLIB Reference Manual. They're a fair way to do it.
There's also the official documentation of course, which is more up to
date. See

More information about the xorg mailing list