Re: Debian Specialities (fwd)
Hi,
In this case, I don't think we should ``get in line'' with
other distributions, since the current Debian practice is an
improvement.
The dosemu maintainer has to add /usr/src/linux/include to the
CFLAGS while compiling dosemu, and make sure that a
kernel-{header,source}-X.XX package is installed. The rest of us
(99.99% of the installation) then does not have to bother with
anythng but lib*-dev.
A more detailed defence of out practice follows.
manoj
-------------------------------README for kernel-headers-X.XX-------------
This package contains the Linux kernel header files (also contained
in libc5-dev packages).
The headers were included in libc5-dev after a rash of very
buggy alpha kernel releases (1.3.7* or something like that) that
proceeded to break compilations, etc. Kernel versions are changed
far more rapidly than libc is, and there are higer chances that
people install a custom kernel than they install custom libc.
Add to that the fact that few programs really need the more
volatile elements of the header files (that is, things that really
change from kernel version to kernel version), [before you reject
this, consider: programs compiled on one kernel version usually work
on other kernels].
So, it makes sense that a set of headers be provided from a
known good kernel version, and that is sufficient for compiling most
programs, (it also makes the compile time environments for programs
on debian machines a well known one, easing the process of dealing
with problem reports), the few programs that really depend on cutting
edge kernel data structures may just use -I/usr/src/linux/include
(provided that kernel-headers or kernel-source exists on the system).
Most programs, even if they include <linux/something.h>, do
not really depend on the version of the kernel, as long as the kernel
versions are not too far off, they will work. And the headers
provided in libc5-dev are just that.
libc5-deb is uploaded frequently enough that it never lags too
far behind the latest released kernel.
There are two different capabilities which are the issue, and
the kernel-packages and libc5-dev address different ones:
a) The kernel packages try to provide a stable, well behaved kernel
and modules, and may be upgraded whenever there are significant
advances in those directions (bug fixes, more/better module
support, etc). These, however, may not have include files that
are non-broken as far as non-kernel programs are concerned, and
the quality of the development/compilation environment is not the
kernel packages priority (Also, please note that the kernel
packages are tied together, so kernel-source, headers, and image
are produced in sync)
b) Quality of the development/compilation environment is the priority
of libc5-dev package, and it tries to ensure that the headers it
provides would be stable and not break non-kernel programs. This
assertion may fail for alpha kernels, which may otherwise be
perfectly stable, hence the need for a different set of known-good
kernel include files.
--
"Interesting survey in the current Journal of Abnormal Psychology:
New York City has a higher percentage of people you shouldn't make
any sudden moves around than any other city in the world." David
Letterman
Manoj Srivastava <url:mailto:srivasta@datasync.com>
Mobile, Alabama USA <url:http://www.datasync.com/%7Esrivasta/>
--
TO UNSUBSCRIBE FROM THIS MAILING LIST: e-mail the word "unsubscribe" to
debian-devel-REQUEST@lists.debian.org . Trouble? e-mail to Bruce@Pixar.com
Reply to: