[alsa-devel] 1.0.16rc1 release -- error: ‘system_utsname’ undeclared
Brad Milne
mail_4brad at yahoo.co.uk
Thu Jan 24 12:52:20 CET 2008
On Jan 25, 2008 12:36 AM, Takashi Iwai <tiwai at suse.de> wrote:
> At Fri, 25 Jan 2008 00:30:31 +1300,
>
> Brad Milne wrote:
> >
> > On Jan 25, 2008 12:23 AM, Takashi Iwai <tiwai at suse.de> wrote:
> > > At Fri, 25 Jan 2008 00:18:33 +1300,
> > >
> > > Brad Milne wrote:
> > > >
> > > > On Jan 24, 2008 11:58 PM, Takashi Iwai <tiwai at suse.de> wrote:
> > > > > At Thu, 24 Jan 2008 23:40:55 +1300,
> > > > >
> > > > > Brad Milne wrote:
> > > > > >
> > > > > > > From tiwai at suse.de Wed Jan 23 08:31:32 2008
> > > > > > > From: tiwai at suse.de (Takashi Iwai)
> > > > > > > Date: Wed, 23 Jan 2008 08:31:32 +0100
> > > > > > > Subject: [alsa-devel]
> > > > > > > =?iso-8859-7?q?1=2E0=2E16rc1_release_--_error=3A_=A1?=
> > > > > > > =?iso-8859-7?q?system=5Futsname=A2_undeclared?=
> > > > > > > In-Reply-To: <s5htzl5t45y.wl%tiwai at suse.de>
> > > > > > > References: < Pine.LNX.4.61.0801221247570.9698 at tm8103.perex-int.cz>
> > > > > > > <47964342.1060608 at measham.id.au> <s5htzl5t45y.wl%tiwai at suse.de >
> > > > > > > Message-ID: <s5hsl0pt2uj.wl%tiwai at suse.de>
> > > > > >
> > > > > > > At Wed, 23 Jan 2008 08:03:05 +0100,
> > > > > > > I wrote:
> > > > > > > >
> > > > > > > > At Wed, 23 Jan 2008 06:25:54 +1100,
> > > > > > > > Rick Measham wrote:
> > > > > > > > >
> > > > > > > > > [1 <multipart/signed (7bit)>]
> > > > > > > > > [1.1 <text/plain; UTF-8 (quoted-printable)>]
> > > > > > > > > Jaroslav Kysela wrote:
> > > > > > > > > > 1.0.16rc1 release is available for download on
> > > > > > > > >
> > > > > > > > > Running Kubuntu:
> > > > > > > > >
> > > > > > > > > # uname -a
> > > > > > > > > Linux lugtop 2.6.20-16-386 #2 Sun Sep 23 19:47:10 UTC 2007 i686 GNU/Linux
> > > > > > > > >
> > > > > > > > >
> > > > > > > > > During the make:
> > > > > > > > >
> > > > > > > > > In file included from
> > > > > > > > > /usr/src/alsa/alsa-driver-1.0.16rc1/acore/info_oss.c:7:
> > > > > > > > > /usr/src/alsa/alsa-driver-1.0.16rc1/acore/../alsa-kernel/core/info_oss.c:
> > > > > > > > > In function ?snd_sndstat_proc_read?:
> > > > > > > > > /usr/src/alsa/alsa-driver-1.0.16rc1/acore/../alsa-kernel/core/info_oss.c:96:
> > > > > > > > > error: ?system_utsname? undeclared (first use in this function)
> > > > > > > > > /usr/src/alsa/alsa-driver-1.0.16rc1/acore/../alsa-kernel/core/info_oss.c:96:
> > > > > > > > > error: (Each undeclared identifier is reported only once
> > > > > > > > > /usr/src/alsa/alsa-driver-1.0.16rc1/acore/../alsa-kernel/core/info_oss.c:96:
> > > > > > > > > error: for each function it appears in.)
> > > > > > > > > make[3]: *** [/usr/src/alsa/alsa-driver-1.0.16rc1/acore/info_oss.o] Error 1
> > > > > > > > > make[2]: *** [/usr/src/alsa/alsa-driver-1.0.16rc1/acore] Error 2
> > > > > > > > > make[1]: *** [_module_/usr/src/alsa/alsa-driver-1.0.16rc1] Error 2
> > > > > > > > > make[1]: Leaving directory `/usr/src/linux-headers-2.6.20-16-386'
> > > > > > > > > make: *** [compile] Error 2
> > > > > > > >
> > > > > > > > Isn't it fixed on HG version?
> > > > > >
> > > > > > > Nevermind, I myself can confirm that it's broken.
> > > > > > > The patch below should fix the problem.
> > > > > >
> > > > > >
> > > > > > > Takashi
> > > > > >
> > > > > > > diff -r a5f603cb254a configure.in
> > > > > > > --- a/configure.in Tue Jan 22 17:52:34 2008 +0100
> > > > > > > +++ b/configure.in Wed Jan 23 08:28:56 2008 +0100
> > > > > > > @@ -2571,7 +2571,7 @@ init_utsname="0"
> > > > > > > init_utsname="0"
> > > > > > > ac_save_CFLAGS="$CFLAGS"
> > > > > > > ac_save_CC="$CC"
> > > > > > > -CFLAGS="$KERNEL_CHECK_CFLAGS -Werror"
> > > > > > > +CFLAGS="$KERNEL_CHECK_CFLAGS -Werror=implicit-function-declaration"
> > > > > > > CC=$KCC
> > > > > > > AC_TRY_COMPILE([
> > > > > > > #define __KERNEL__
> > > > > >
> > > > > > It doesn't seem that it is fixed in HG or by this patch (though I do get:
> > > > > > patching file configure.in
> > > > > > Hunk #1 succeeded at 1579 with fuzz 2 (offset
> > > > > > -992 lines).
> > > > > > patch unexpectedly ends in middle of line
> > > > > > when patching), I get the exact same error in both.
> > > > >
> > > > > And did you run hgcompile after that?
> > > >
> > > > If I run:
> > > > sudo ./configure
> > > > then:
> > > > sudo ./hgcompile
> > >
> > > You don't have to be root for compiling the driver. The root priv is
> > > needed only for installation, i.e. make install.
> > >
> > > > on the latest hg code, I still get the same error:
> > >
> > > > from /usr/src/alsa/alsa-driver/acore/info_oss.c:7:
> > > > include/linux/utsname.h:77: error: expected '=', ',', ';', 'asm' or
> > > > '__attribute__' before '{' token
> > > > ...
> > > > /usr/src/alsa/alsa-driver/acore/../alsa-kernel/core/info_oss.c: In
> > > > function 'snd_sndstat_proc_read':
> > > > /usr/src/alsa/alsa-driver/acore/../alsa-kernel/core/info_oss.c:96:
> > > > error: 'system_utsname' undeclared (first use in this function)
> > > > ...
> > > > make[3]: *** [/usr/src/alsa/alsa-driver/acore/info_oss.o] Error 1
> > > > ...
> > >
> > > Interesting. You're using 2.6.20 kernel, right?
> > >
> > > First check include/config.h. whether it defines
> > > CONFIG_HAVE_INIT_UTSNAME. If it's defined, then the build must go
> > > well. If it's undefined (commented out), then check configure.in
> > > whether the patch was properly applied and -Werror was changed to
> > > -Werror=implicit-function-declaration. And see config.log at the
> > > place where init_utsname is checked. You must have a compile error
> > > there. Show that part.
> >
> > brad at cyborg:/usr/src/alsa/alsa-driver$ uname -a
> > Linux cyborg 2.6.22-14-generic #1 SMP Tue Dec 18 08:02:57 UTC 2007
> > i686 GNU/Linux
> >
> > include/config.h:
> > /* 2.6 kernel */
> > #define CONFIG_SND_NESTED_CLASS_DEVICE 1
> > /* #undef CONFIG_SND_OLD_DRIVER_SUSPEND */
> > #define CONFIG_SND_REMOVE_PAGE_RESERVE 1
> > #define CONFIG_SND_NEW_IRQ_HANDLER 1
> > #define CONFIG_HAVE_PNP_SUSPEND 1
> > #define CONFIG_HAVE_GFP_T 1
> > /* #undef CONFIG_HAVE_INIT_UTSNAME */ <----!!
> >
> > configure.in (hg version):
> > dnl Check for init_utsname...
> > AC_MSG_CHECKING(for init_utsname)
> > init_utsname="0"
> > ac_save_CFLAGS="$CFLAGS"
> > ac_save_CC="$CC"
> > CFLAGS="$KERNEL_CHECK_CFLAGS -Werror=implicit-function-declaration"
> > CC=$KCC
> > AC_TRY_COMPILE([
> > #define __KERNEL__
> >
> > config.log:
> > configure:11638: checking for init_utsname
> > configure:11673: gcc -c -Wall -fno-strict-aliasing -g -O2
> > -I/lib/modules/2.6.22-14-generic/build/include
> > -I/lib/modules/2.6.22-14-generic/build/include/asm-i386/mach-default
> > -Iinclude -nostdinc -iwithprefix include -DKBUILD_STR(s)=#s
> > -DKBUILD_BASENAME=KBUILD_STR(dummy) -DKBUILD_MODNAME=KBUILD_BASENAME
> > -Werror=implicit-function-declaration conftest.c >&5
> > cc1: error: unrecognized command line option
> > "-Werror=implicit-function-declaration"
>
> Grrr, it looks like this option isn't available for all gcc versions.
>
> Then try the patch below and run hgcompile. It should work, at least,
> for your system.
>
>
> thanks,
>
> Takashi
>
> ---
>
> diff -r e80f59e90231 configure.in
> --- a/configure.in Wed Jan 23 08:33:10 2008 +0100
> +++ b/configure.in Thu Jan 24 12:36:35 2008 +0100
> @@ -2567,13 +2567,16 @@ fi
> fi
>
> 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=implicit-function-declaration"
> -CC=$KCC
> -AC_TRY_COMPILE([
> + 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>
> @@ -2585,9 +2588,10 @@ AC_TRY_COMPILE([
> 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
> + 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)
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
>
It looks like that's done it! Thanks heaps for your help. I'm hoping
for some better support for my ALC262 from intel hda (headphones and
mic) in this release :)
Brad
More information about the Alsa-devel
mailing list