I have now refined the description of the original problem, after theother problems were resolved. The init_utsname problem only occurs withthe RHE5.1 kernel, and not with the corresponding vanilla kernel.orgkernel. My build procedure is (this is before Jaroslav fixed the alsa-kmirrorissue): $ git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror$ git clone git://git.alsa-project.org/alsa-driver.git alsa-driver $ cd alsa-driver$ ALSAKERNELDIR=../alsa-kmirror ./gitcompile The Linux headers in /usr/include/linux are owned by the packagelinux-headers-2.6.8-53.1.19 from RHEL5.1 . Note the resultchecking for init_utsname... noHowever, this kernel includes a definition for init_utsname ininclude/linux/utsname.h:37:52. The configure test has detected the wrongresult. Further down, the build fails CC [M] /home/stanb/Desktop/Drivers/alsa-driver/acore/info_oss.oIn file includedfrom /home/stanb/Desktop/Drivers/alsa-driver/acore/../alsa-kernel/core/info_oss.c:29, from /home/stanb/Desktop/Drivers/alsa-driver/acore/info_oss.c:7:include/linux/utsname.h:37:52: error: macro "init_utsname" passed 1arguments, but takes just 0In file includedfrom /home/stanb/Desktop/Drivers/alsa-driver/acore/../alsa-kernel/core/info_oss.c:29, from /home/stanb/Desktop/Drivers/alsa-driver/acore/info_oss.c:7:include/linux/utsname.h:38: error: expected ‘=’, ‘,’, ‘;’, ‘asm’ or‘__attribute__’ before ‘{’ token If I build against a kernel.org vanilla 2.6.18, as follows: $ cd linux-2.6.18$ make modules_prepare$ cd ..$ git clone git://git.alsa-project.org/alsa-kmirror.git alsa-kmirror$ git clone git://git.alsa-project.org/alsa-driver.git alsa-driver $ cd alsa-driver$ ALSAKERNELDIR=../alsa-kmirror ./gitcompile--with-kernel=../linux-2.6.18 --with-build=../linux-2.6.18 Then the build fails further down (for a different reason): CC [M] /home/stanb/Desktop/Drivers/alsa-driver/pci/ice1712/ice1724.oIn file includedfrom /home/stanb/Desktop/Drivers/alsa-driver/pci/ice1712/ice1724.c:2:/home/stanb/Desktop/Drivers/alsa-driver/pci/ice1712/../../alsa-kernel/pci/ice1712/ice1724.c: In function ‘get_rawmidi_substream’:/home/stanb/Desktop/Drivers/alsa-driver/pci/ice1712/../../alsa-kernel/pci/ice1712/ice1724.c:240: warning: implicit declaration of function ‘list_first_entry’/home/stanb/Desktop/Drivers/alsa-driver/pci/ice1712/../../alsa-kernel/pci/ice1712/ice1724.c:241: error: expected expression before ‘struct’/home/stanb/Desktop/Drivers/alsa-driver/pci/ice1712/../../alsa-kernel/pci/ice1712/ice1724.c:241: warning: return makes pointer from integer without a castmake[4]: ***[/home/stanb/Desktop/Drivers/alsa-driver/pci/ice1712/ice1724.o] Error 1 Ben Stanley. On Fri, 2008-05-23 at 11:41 +1000, Ben Stanley wrote:> Hi,> > alsa-drivers-HEAD does not compile against recent RHE5 kernels, such as > ftp://ftp.redhat.com/pub/redhat/linux/enterprise/5Client/en/os/SRPMS/kernel-2.6.18-53.1.21.el5.src.rpm> > The problem is mixed up with the test for init_utsname in configure.in:> > dnl Check for init_utsname...> if test "$kversion.$kpatchlevel" = "2.6" -a $ksublevel -ge 19; then> CONFIG_HAVE_INIT_UTSNAME=1> else> AC_MSG_CHECKING(for init_utsname)> init_utsname="0"> ac_save_CFLAGS="$CFLAGS"> ac_save_CC="$CC"> CFLAGS="$KERNEL_CHECK_CFLAGS -Werror"> CC=$KCC> AC_TRY_COMPILE([> #define __KERNEL__> #include <linux/config.h>> #include <linux/utsname.h>> ],[> int *x = (int *)init_utsname();> *x = 0;> ],> AC_MSG_RESULT(yes);init_utsname="1",> AC_MSG_RESULT(no);init_utsname="0",> AC_MSG_RESULT(unknown);init_utsname="0"> )> CFLAGS=$ac_save_CFLAGS> CC=$ac_save_CC> CONFIG_HAVE_INIT_UTSNAME=$init_utsname> fi> dnl AC_SUBST(CONFIG_HAVE_INIT_UTSNAME)> if test "$CONFIG_HAVE_INIT_UTSNAME" = "1"; then> AC_DEFINE(CONFIG_HAVE_INIT_UTSNAME)> fi> > The problem is that <linux/config.h> does not exist in recent kernel.org> and RH 2.6.18 kernels. The AC_TRY_COMPILE produces a negative result> (because of a warning, treated as an error, about the missing> linux/config.h file), which then causes CONFIG_HAVE_INIT_UTSNAME to NOT> be defined.> > This results in a compile failure in acore/info_oss.c .> > I'm not sure how this should be fixed. I'm also not sure why someone> else hasn't noticed it already, since it affects me with a standard> kernel.org kernel. Therefore, here is my test procedure.> > wget http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.25.tar.bz2> tar -xjf linux-2.6.25.tar.bz2> cd linux-2.6.25> make defconfig> make modules_prepare> cd ..> > (This next step takes *forever*)> git clone git://git.alsa-project.org/alsa-kernel.git alsa-kernel> > git clone git://git.alsa-project.org/alsa-driver.git alsa-driver> cd alsa-driver> ./gitcompile --with-kernel=../linux-2.6.25 --with-build=../linux-2.6.25> > This currently produces an error:> No alsa-kernel is found.> Please specify the correct location via ALSAKERNELDIR environment> variable.> > So instead I run> ALSAKERNELDIR=../alsa-kernel ./gitcompile --with-kernel=../linux-2.6.25> --with-build=../linux-2.6.25> and I get the same error.> > when I repeat the above with an alsa-kernel from hg, I do not get this> problem (in fact, alsa-driver compiles completely on the Ubuntu 7.10> machine I'm using for this test).> > So, I've got perhaps two different problems here. I need a hand.> > Ben Stanley.> > > _______________________________________________> Alsa-devel mailing list> Alsa-devel@xxxxxxxxxxxxxxxx> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel _______________________________________________Alsa-devel mailing listAlsa-devel@xxxxxxxxxxxxxxxxxxxx://mailman.alsa-project.org/mailman/listinfo/alsa-devel