[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: compiling kernel



Andrew Waltman <awaltman@shore.net> writes:
| > On Wed, 14 Apr 1999, Pollywog wrote:
| 
| > Building the kernel the "standard" way is fine in Debian.  I did it for
| > almost 2 years before recently switching to the 'make-kpkg' method.
| > Make-kpkg is really nice, and quite easy.  It turns the newly compiled
| > kernel into a .deb file, which you can easily install.  It will make sure
| > things like the system map file get put in the right place, and other
| > handly little details like that.
| 
| I have been hand-building the kernel for a while now, but decided to try
| using make-kpkg today. It seemed to work well, but I have a couple of
| questions:
| 
| How are the header files handled? I made the kernel-headers deb and
| installed it, but the files in /usr/include/asm, linux, etc. did not get
| updated. Do you have to do something special to get them to install
| correctly? Also, according to the kernel source README there should be
| symlinks into the the source tree, but it looks like Debian does it
| differently -- there are no symlinks. How does this work when you upgrade a
| kernel? 

The information in the kernel source is not really correct. Linus
himself has stated numerous times that making the symlinks can cause
some serious problems. Namely, that the libc file doesn't correspond to 
the header files if you modify the links yourself. Personally, I have
NEVER updated the kernel header files when I package the kernel
myself. I imagine some software might require updated header files,
but I haven't run into it yet.

| How are modules made and installed using make-kpkg? I had to manually make
| and install them. I tried "make-kpkg buildpackage", "make-kpkg
| modules_config", "make-kpkg modules", but the modules where never built
| until I did "make modules; make modules_install" in the
| /usr/src/linux-2.2.5 directory.

make-kpkg compiles the modules automatically whenever you build a
kernel image. These modules get put into the kernel*.deb file along
with the kernel and are installed when you use 
"dpkg --install kernel-image_<whatever>.deb". The only reason I can
think of for it not to do this is if you didn't specify kernel_image
as the target. Invoke make-kpkg like:

	make-kpkg --revision whatever.1 --zimage kernel_image

Gary


Reply to: