Re: [linux-audio-user] Fedora and ALSA drivers.

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-user] Fedora and ALSA drivers.
From: Frank Barknecht (fbar_AT_footils.org)
Date: Mon Oct 20 2003 - 20:59:01 EEST


Hallo,
Richard hat gesagt: // Richard wrote:

> This only 2 examples.
>
> gcc-3.3.1-6
> kernel-2.4.22-1.2097.nptl
> kernel-source to match
>
> gcc -D__KERNEL__ -DMODULE=1 -I/home/ric/alsa-driver-0.9.7c/include -I/lib/modules/2.4.22-1.2097.nptl/build/include -O2 -mpreferred-stack-boundary=2 -march=athlon -DLINUX -Wall -Wstrict-prototypes -fomit-frame-pointer -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -pipe -DALSA_BUILD -DEXPORT_SYMTAB -c hwdep.c
> In file included from /home/ric/alsa-driver-0.9.7c/include/sound/driver.h:42,
> from hwdep.c:22:
> /home/ric/alsa-driver-0.9.7c/include/adriver.h:134: error: redefinition of `PDE'/lib/modules/2.4.22-1.2097.nptl/build/include/linux/proc_fs.h:17: error: `PDE' previously defined here
> make[1]: *** [hwdep.o] Error 1
> make[1]: Leaving directory `/home/ric/alsa-driver-0.9.7c/acore'
>
...
> At some point i been told that the drivers needed be fixed to compile in
> fedora.so. well if you can make out something out of this.. ill appreciate

Well, this is a bit strange. I'm guessing a bit now:

The offending lines in your example result from adriver.h defining
things for some kernel versions, including kernel 2.4.22.

For example the error regarding PDE:

/home/ric/alsa-driver-0.9.7c/include/adriver.h:134: error:
redefinition of `PDE
'/lib/modules/2.4.22-1.2097.nptl/build/include/linux/proc_fs.h:17:
error: `PDE' previously defined here

This means, that somewhere in "include/linux/proc_fs.h" the name PDE
is already defined. In adriver.h ALSA tries to define it on its own
like this:

#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 5, 4)
#include <linux/fs.h>
static inline struct proc_dir_entry *PDE(const struct inode *inode)
{
...
#endif

The strange thing is, that in my rather vanilla version of kernel
2.4.22 there is no such thing as PDE in include/linux/*:

$ grep PDE /usr/src/linux/include/linux/proc_fs*
$ (nothing here)

So I suspect, but I can only guess here, that your kernel source has a
patch that introduces this PDE thing (I have no idea what it could be
used for).

I don't know if ALSA could fix that at all. It might be, that if
Fedora ships a custom Linux kernel source, they should also provide
adapted ALSA-sources.

ciao

-- 
 Frank Barknecht                               _ ______footils.org__


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Mon Oct 20 2003 - 21:02:19 EEST