Problems building wmx

eklirmr at eklirmr at
Wed Feb 11 07:39:50 PST 2004

A couple of years ago I built version 3 of Linux From Scratch (GCC
2.95.3 and kernel 2.4.8) and added XFree86 with wmx as a window
manager and w3m as a Web browser.  It's simple and I like it.

Recently I thought I'd try and learn a bit more about Linux so I
decided to try LFS version 5.  Building LFS went without any problems
at all.  The problems started very soon afterwards!

The PC is an old Dell H266 Dimension dual-booting LFS3 and LFS5.  LFS5
is built exactly according to the book except that I still use the old
LFS3 LILO as a boot loader.

In LFS5 I built XFree86 exactly according to the BLFS book.  Then I
tried to build wmx6, exactly the same version as I use under LFS3.  I
got the following output:

c++ -c -g -O2 -I/usr/X11R6/include Border.C
c++ -c -g -O2 -I/usr/X11R6/include Buttons.C
Buttons.C:187:8: warning: extra tokens at end of #endif directive
Buttons.C:193:8: warning: extra tokens at end of #endif directive
Buttons.C:199:8: warning: extra tokens at end of #endif directive
c++ -c -g -O2 -I/usr/X11R6/include Channel.C
c++ -c -g -O2 -I/usr/X11R6/include Client.C
c++ -c -g -O2 -I/usr/X11R6/include Config.C
c++ -c -g -O2 -I/usr/X11R6/include Events.C
c++ -c -g -O2 -I/usr/X11R6/include Main.C
c++ -c -g -O2 -I/usr/X11R6/include Manager.C
c++ -c -g -O2 -I/usr/X11R6/include Menu.C
Menu.C:625: error: default argument given for parameter 3 of `
   CommandMenu::CommandMenu(WindowManager*, XEvent*, char*)'
Menu.h:92: error: after previous specification in `
   CommandMenu::CommandMenu(WindowManager*, XEvent*, char*)'
make: *** [Menu.o] Error 1

I thought at first this might be a problem with the new build of
XFree, so I went back through the build log to see if I could find any
errors, but everything seemed to be OK.

Then, under LFS3, I looked at the output of ldd /usr/X11R6/bin/wmx,
which shows a dependency on /usr/lib/, which
is present in LFS3 but not LFS5.  I wondered if there might be some
problem in wmx which prevents it from compiling under GCC 3.3.1.

So, again following the BLFS book, I installed GCC 2.95.3, including
moving the libraries to the standard lib directory.  I have to admit
that the instructions in the BLFS book confused me: how can a program
distinguish between the GCC 3.1.1 and 2.95.3 libraries in /usr/lib?

Anyway, even after doing that, the error message in the wmx build was
unchanged.  I even tried (as with the kernel) "make
CC=/opt/gcc-2.95.3/bin/gcc", but that didn't work either.

Well, the wmx source builds just one binary, so I copied it from the
LFS3 to the LFS5 installation - and that works!  The only problem is,
I don't understand why.  And I think that, if I _did_ understand why,
I'd understand a lot more about Linux.

Could there be some kind of very subtle fault in my LFS5 installation?
I ran the GCC tests and the results were almost identical with those
on the gcc-gnu mailing list for which the URL is given in the LFS
book.  But I did have a problem building w3m, too (version 0.4.2); I
hadn't installed OpenSSL, but the configure script thought I had, and
the make program stopped with the corresponding error.  Once I'd
installed OpenSSL, it built OK.

Thanks for any help or ideas; I'd like to know whether I'm likely to
have more problems with my new LFS system before I move my e-mail
programs over.



More information about the blfs-support mailing list