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

Re: alsa and modutils



Christoph Simon <ciccio@prestonet.com.br> writes:
CS> On Thu, 14 Dec 2000 11:46:20 -0800 (PST)
CS> Andrew Perrin <aperrin@socrates.Berkeley.EDU> wrote:
CS> 
 AP> Greetings.  I'm trying to compile (from source) alsa-driver and the other
 AP> components of alsa, and running into this (rather opaque) problem:
 AP> 
 AP> make[1]: Entering directory `/usr/src/alsa-driver-0.5.10/kernel'
 AP> gcc   -DALSA_BUILD -D__KERNEL__ -O2 -m386 -DCPU=386 -DLINUX -Wall -Wstrict-prototypes -fomit-frame-pointer -pipe -I/usr/src/linux/include -I.. -DEXPORT_SYMTAB -c sound.c
 AP> In file included from sound.c:23:
 AP> ../include/driver.h:66: linux/modversions.h: No such file or directory
 AP> make[1]: *** [sound.o] Error 1
 AP> make[1]: Leaving directory `/usr/src/alsa-driver-0.5.10/kernel'
 AP> make: *** [compile] Error 1
 AP> 
 AP> it's quite true, there is no modversions.h.  I can create one by linking
 AP> to .../kernel-headers-2.2.17/include/linux/modversions.h, but that just
 AP> spits out a long list of errors too.  Has anyone managed to figure this
 AP> out?
CS> 
CS> It seems that kernels and the alsa driver like to live in certain
CS> directories. I assume here, you do have the kernel sources comiled and
CS> installed (BTW, why aren't you using the latest?). The kernel sources
CS> should be in "/usr/src/linux-<version>"; then, there should be a link
CS> "/usr/src/linux" just to that directory.

This isn't necessary (and is arguably a poor idea) under Debian.  I
put my kernel sources in /usr/local/kernel-source-<version>-$HOST (I
built kernels for both of my machines on the faster of the two), and
everything works fine.

CS> Next, if you unpack the alsa sources, they should be in
CS> "/usr/src/modules/alsa-driver/". There you should run
CS> "./configure". If you still have problems, maybe you should run
CS> ./configure with "--help" to see, if there are some directories you
CS> could set explicitly, but actually, this should not be necessary.

Even better, cd into the top-level kernel source directory, and run
'make-kpkg modules_image'.  (You need the kernel-package package
installed, but that's how you built the kernel in the first place,
right?  :-)  That will automagically build modules out of anything
unpacked under /usr/src/modules, and turn them into Debian packages in 
the directory above the top of the kernel source tree.

(Conceivable reasons someone might want to run 2.2.17 over 2.2.18,
BTW: they already have 2.2.17 source, don't want to download the
updated tarball/patch, and don't need the new features in 2.2.18.
Especially if they have a slow link.  Alternatively, 2.2.17 Works For
Them (TM) and they don't trust 2.2.18 just yet.)

-- 
David Maze             dmaze@mit.edu          http://www.mit.edu/~dmaze/
"Theoretical politics is interesting.  Politicking should be illegal."
	-- Abra Mitchell



Reply to: