2002-06-23 11:43:49

by Rudmer van Dijk

[permalink] [raw]
Subject: build failure for 2.5.24-dj1

Hi,

upgraded in the usual way:
- store .config
- make mrproper
- put .config back
- make oldconfig
- make dep
- make KBUILD_VERBOSE= KBUILD_MODULES=1 bzImage

but this time the build failed due to undefined references to `key_maps',
`keymap_count', `func_table', `funcbufsize', `funcbufleft', `funcbufptr',
`accent_table_size', `accent_table' and `plain_map'

this is related to this warning during the build:
set -e ; loadkeys --mktable defkeymap.map | sed -e 's/^static *//' >
defkeymap.c
/bin/sh: loadkeys: command not found
as all of these functions should be in defkeymap.c

upon inspection I found that with 'make mrproper' drivers/char/defkeymap.c
is removed which it did not do in earlier kernels.
on my system 'loadkeys' is not installed because i did not have the kdb
package installed (I did not need it). looking in Documentation/Changes of
2.5.24-dj1 I could not find any reference to kdb so I think it should be
added in the list of neccesary software since it is now!

Rudmer

proposal (add it to the list of minimal requirements):

diff -u linux-2.5.24-dj1/Documentation/Changes.orig
linux-2.5.24-dj1/Documentation/Changes
--- linux-2.5.24-dj1/Documentation/Changes.orig Sun Jun 23 13:34:26 2002
+++ linux-2.5.24-dj1/Documentation/Changes Sun Jun 23 13:38:13 2002
@@ -59,7 +59,8 @@
o pcmcia-cs 3.1.21 # cardmgr -V
o PPP 2.4.0 # pppd --version
o isdn4k-utils 3.1pre1 # isdnctrl 2>&1|grep
version
-
+o kdb 1.06 # loadkeys --version
+
Kernel compilation
==================


2002-06-23 12:37:56

by Andries Brouwer

[permalink] [raw]
Subject: Re: build failure for 2.5.24-dj1

On Sun, Jun 23, 2002 at 01:43:32PM +0200, Rudmer van Dijk wrote:

> upon inspection I found that with 'make mrproper' drivers/char/defkeymap.c
> is removed which it did not do in earlier kernels.
> on my system 'loadkeys' is not installed because i did not have the kdb
> package installed (I did not need it). looking in Documentation/Changes of
> 2.5.24-dj1 I could not find any reference to kdb so I think it should be
> added in the list of neccesary software since it is now!
>
> Rudmer
>
> +o kdb 1.06 # loadkeys --version

(i) It is a bug to regard drivers/char/defkeymap.c as a generated file.
Every now and then something is changed (sticky keys were added, etc)
and a new table can only be generated by a new loadkeys.

So, the person who makes the change changes the kernel headers in his
own tree, recompiles loadkeys against these new headers, generates
the new defkeymap.c. This new defkeymap.c is distributed as part of
the kernel source.

It will take a long time before the whole world has a new loadkeys,
so it is unreasonable to expect that everybody can generate defkeymap.c
when there have been changes.

(ii) kdb: kernel debugger; kbd: keyboard utilities.

Andries

2002-06-23 14:03:53

by Rudmer van Dijk

[permalink] [raw]
Subject: Re: build failure for 2.5.24-dj1

On Sunday 23 June 2002 14:37, Andries Brouwer wrote:
> On Sun, Jun 23, 2002 at 01:43:32PM +0200, Rudmer van Dijk wrote:
> > upon inspection I found that with 'make mrproper'
> > drivers/char/defkeymap.c is removed which it did not do in earlier
> > kernels.
> > on my system 'loadkeys' is not installed because i did not have the kdb
> > package installed (I did not need it). looking in Documentation/Changes
> > of 2.5.24-dj1 I could not find any reference to kdb so I think it should
> > be added in the list of neccesary software since it is now!
> >
> > Rudmer
> >
> > +o kdb 1.06 # loadkeys --version
>
> (i) It is a bug to regard drivers/char/defkeymap.c as a generated file.
> Every now and then something is changed (sticky keys were added, etc)
> and a new table can only be generated by a new loadkeys.
>
> So, the person who makes the change changes the kernel headers in his
> own tree, recompiles loadkeys against these new headers, generates
> the new defkeymap.c. This new defkeymap.c is distributed as part of
> the kernel source.
>
> It will take a long time before the whole world has a new loadkeys,
> so it is unreasonable to expect that everybody can generate defkeymap.c
> when there have been changes.

then it is a bug that defkeymap.c is removed and must be (re)generated to get
the kernel compiled.

the removal of defkeymap.c is added in 2.5.24
in toplevel Makefile to CLEAN_FILES and the file itself is also removed by
applying the patch.

Rudmer

2002-06-23 20:13:38

by Rudmer van Dijk

[permalink] [raw]
Subject: Re: build failure for 2.5.24-dj1

On Sunday 23 June 2002 14:37, Andries Brouwer wrote:
> On Sun, Jun 23, 2002 at 01:43:32PM +0200, Rudmer van Dijk wrote:
> > upon inspection I found that with 'make mrproper'
> > drivers/char/defkeymap.c is removed which it did not do in earlier
> > kernels.
> > on my system 'loadkeys' is not installed because i did not have the kdb
> > package installed (I did not need it). looking in Documentation/Changes
> > of 2.5.24-dj1 I could not find any reference to kdb so I think it should
> > be added in the list of neccesary software since it is now!
> >
> > Rudmer
> >
> > +o kdb 1.06 # loadkeys --version
>
> (i) It is a bug to regard drivers/char/defkeymap.c as a generated file.
> Every now and then something is changed (sticky keys were added, etc)
> and a new table can only be generated by a new loadkeys.
>
> So, the person who makes the change changes the kernel headers in his
> own tree, recompiles loadkeys against these new headers, generates
> the new defkeymap.c. This new defkeymap.c is distributed as part of
> the kernel source.
>
> It will take a long time before the whole world has a new loadkeys,
> so it is unreasonable to expect that everybody can generate defkeymap.c
> when there have been changes.

then it is a bug that defkeymap.c is removed and must be (re)generated to get
the kernel compiled.

the removal of defkeymap.c is added in 2.5.24
in toplevel Makefile to CLEAN_FILES and the file itself is also removed by
applying the patch.

Rudmer