Thursday, August 14, 2008

Build modular xorg X11R7

Getting this to build in one fell swoop was quite an undertaking. But I had too little patience to build and install 301 packages by hand. Did I mention that they all must be built in a particular order?

I built X11R7.2 by using ideas from blfs-6.3-rc3 and from Xorg. The script build-from-tarballs.sh from xorg (somewhere on the developer pages) is nice, but it needed some help from lfs and then a little more help to boot.

So I started by deciding to put everything into the directory /sources/XORG and then using these customized scripts to do the heavy work:

get-em.sh
build-from-tarballs.sh

First I downloaded everything with get-em.sh.

Then I fired up the build with this script: 2200-xorg7 actually from the jhalfs Makefile.

A good way to fire it up stand-alone, as root might be:
sh 2200-xorg7 2>&1 | tee -a 2200-xorg7.log

And then watch summary of the progress with:
tail -f 2200-xorg7.log | grep "Building"

This patch for libX11 would not be available anywhere but it is based on blfs-6.3 instructions and they seem to know what they are doing: libX11-locking-bug-lfs-6.3-rc3.diff. I searched finding possible explanation of why blfs wanted to remove the leading underscore from _XGetWindowAttributes.

It seems that X11R7.3 makes the change in libX11 to agree with blfs. This one might have relevance to mentions of some applications having locking problems with XCB which I built without.

My decision was to install this in /usr since this is essential software on which many things depend.

I installed --without-xcb because X11R6 always worked fine without it. There are some posts on distro forums with people claiming that response is sluggish with xcb and removing xcb makes the response better again. Maybe someday after I have learned what xcb is and have read great reviews of how much better it is, I might use it.

Update:
As for all this new stuff, I have just discovered that CTRL-ALT-F1, F2,F3, etc., do not go to the text console as it always used to do in X11R6. The reason is that xkbdata has been deemed deprecated in favor of xkeyboard-config, yet xkeyboard-config does not work good for me.

xkbdata can be found in deprecated.
I uninstalled xkeyboard-config and installed xkbdata and the CTRL-ALT-F1, F2,F3, keys work as intended. As soon as I can, I'm going to update the scripts to build the "deprecated" xkbdata.

Update again:
Searching for the offending error "(WW) Couldn't load XKB keymap, falling back to pre-XKB keymap" turned up many possible approches including this one:
Beyond Linux From Scratch Version - svn-20080121 adds this configure parameter for xkeyboard-config-0.9:
" --with-xkb-base=$XORG_PREFIX/share/X11/xkb: This parameter sets the installation directory for the keyboard data to the location where Xorg-Server-1.2.0 expects it."
So, I uninstalled the xkbdata and installed xkeyboard-config with that parameter added and it worked. Due to suspicions about whether uninstall "completely" uninstalls, I may consider rolling back and installing xorg7 all over again to prove that this worked. The reason for using xkeyboard-config-0.9 version is that it is available from xorg and is thus the one downloaded by wget-em.sh.
This does not yet create the directory /var/lib/xkb to satisfy the link "usr/share/X11/xkb/compiled -> /var/lib/xkb" whose purpose I have not yet ascertained. This thread talks about a patch that appears to create that directory, among other things. Well, the system is working now, and I guess I'll look at it again if I need that "compiled" thing.

0 Comments:

Post a Comment

Subscribe to Post Comments [Atom]

Click blog title for the latest post