# Update auf 2.6.28 ---> Fehler madwifi und qspcav1

## Pegasus87

Hallo,

ich habe mal wieder ein Kernelupdate auf 2.6.28 gemacht und wollte entsprechend einige Module neu bauen, unter anderem:

qspcav1 (Für die Logitech Quickcam)

madwifi (Für Atheros WLAN)

Außerdem hab ich GCC von 4.1.2 auf 4.3.2 aktualisiert.

Jedenfalls brechen alle Installationen mit einem ähnlichen Fehler ab:

```

 *

 * ERROR: net-wireless/madwifi-ng-0.9.4 failed.

 * Call stack:

 *               ebuild.sh, line   49:  Called src_compile

 *             environment, line 3288:  Called linux-mod_src_compile

 *             environment, line 2518:  Called die

 * The specific snippet of code:

 *               eval "emake HOSTCC="$(tc-getBUILD_CC)"                                                 CROSS_COMPILE=${CHOST}-                                              LDFLAGS="$(get_abi_LDFLAGS)"                                            ${BUILD_FIXES}                                               ${BUILD_PARAMS}                                                 ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";

 *  The die message:

 *   Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS=  KERNELPATH=/lib/modules/2.6.28-gentoo-r5/build all

 *

 * If you need support, post the topmost build error, and the call stack if relevant.

 * A complete build log is located at '/var/tmp/portage/net-wireless/madwifi-ng-0.9.4/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/net-wireless/madwifi-ng-0.9.4/temp/environment'.

 *

```

Hier mal Madwifi, sieht bei qspca aber fast genauso aus...

Woran liegt das?

Ich habe schon mit gcc-config zurück auf 4.1.2 geschaltet, bringt allerdings nichts.

Falls noch andere Infos benötigt werden, einfach fragen.

Danke!

----------

## Max Steel

Das liegt daran das diese Treiber nun im Kernel enthalten sind, und die Ebuilds das wissen, im Kernel ist immer besser als extra Treiber. (Ausnahmen gibt es, oss (Version 4) ist ein Beispiel).

----------

## Pegasus87

Hmm... also den madwifi für Atheros gibts nicht im Kernel und ich bin mir nicht sicher, ob der ath5k den ersetzt.

Ebenfalls gibts es für die Logitech Quickcam Express auch (noch) keinen passenden Treiber, der V4L2 nutzt.

Evtl. klappt das mit dem "alten" V4L Treiber....

----------

## Max Steel

Auf jeden Fall brauchen wir mehr Output um dein emerge-Problem zu verstehen, also wir brauchen noch mindestens 1 Zeile vor dem ersten Fehler im Compile-Vorgang, das einfachste wäre die komplette Log, am besten als File irgendwo zum runterladen.

----------

## Pegasus87

hier noch mal madwifi:

```
  LD [M]  /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_scan_ap.o

  Building modules, stage 2.

  MODPOST 8 modules

  CC      /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan.mod.o

  CC      /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_acl.mod.o

  CC      /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_ccmp.mod.o

  CC      /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_scan_ap.mod.o

  CC      /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_scan_sta.mod.o

  CC      /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_tkip.mod.o

  CC      /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_wep.mod.o

  CC      /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_xauth.mod.o

  LD [M]  /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan.ko

  LD [M]  /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_acl.ko

  LD [M]  /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_ccmp.ko

  LD [M]  /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_scan_ap.ko

  LD [M]  /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_scan_sta.ko

  LD [M]  /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_tkip.ko

  LD [M]  /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_wep.ko

  LD [M]  /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/net80211/wlan_xauth.ko

make[1]: Leaving directory `/usr/src/linux-2.6.28-gentoo-r5'

 * Preparing ath_rate_amrr module

make -j2 HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= KERNELPATH=/lib/modules/2.6.28-gentoo-r5/build all

make -C /lib/modules/2.6.28-gentoo-r5/build M=/var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/ath_rate/amrr modules

make[1]: Entering directory `/usr/src/linux-2.6.28-gentoo-r5'

  CC [M]  /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/ath_rate/amrr/amrr.o

  LD [M]  /var/tmp/portage/net-wireless/madwifi-ng-0.9.4/work/madwifi-0.9.4/ath_rate/amrr/ath_rate_amrr.o

  Building modules, stage 2.

  MODPOST 1 modules

vmlinux: Invalid argument

make[2]: *** [__modpost] Error 1

make[1]: *** [modules] Error 2

make[1]: Leaving directory `/usr/src/linux-2.6.28-gentoo-r5'

make: *** [all] Error 2

 *

 * ERROR: net-wireless/madwifi-ng-0.9.4 failed.

 * Call stack:

 *               ebuild.sh, line   49:  Called src_compile

 *             environment, line 3288:  Called linux-mod_src_compile

 *             environment, line 2518:  Called die

 * The specific snippet of code:

 *               eval "emake HOSTCC="$(tc-getBUILD_CC)"                                                 CROSS_COMPILE=${CHOST}-                                              LDFLAGS="$(get_abi_LDFLAGS)"                                            ${BUILD_FIXES}                                               ${BUILD_PARAMS}                                                 ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";

 *  The die message:

 *   Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS=  KERNELPATH=/lib/modules/2.6.28-gentoo-r5/build all

 *

 * If you need support, post the topmost build error, and the call stack if relevant.

 * A complete build log is located at '/var/tmp/portage/net-wireless/madwifi-ng-0.9.4/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/net-wireless/madwifi-ng-0.9.4/temp/environment'.

 *

```

----------

## Max Steel

Irgendwie ist das seltsam...

Ich versteh es zumindest nicht, bin vll nur zu blöd den Fehler zu sehen, auf jeden Fall müssen der Kernel und die Module mit der gleichen gcc-version kompiliert werden.

Schau mal ob das passt (ich glaub uname -a zeigt dir die verwendete GCC-Version an. für den Kernel, ich kann aber leider nicht nachschauen.)

----------

## Pegasus87

Also der Kernel ist auf jeden Fall schon mit 4.3.2 gebaut, ebenso, wie das Modul jetzt gebaut werden soll.

Sollte ich evtl. noch mal andere ebuild mit dem neuen GCC durchcompilieren? glibc evtl. oder linux-headers oder sowas?

----------

## Pegasus87

Also madwifi hat nach einem neu bauen von glibc funktioniert.

gspcav1 macht weiterhin Probleme:

```
>>> Emerging (1 of 1) media-video/gspcav1-20071224

 * gspcav1-20071224.tar.gz RMD160 SHA1 SHA256 size ;-) ...                                                            [ ok ]

 * checking ebuild checksums ;-) ...                                                                                  [ ok ]

 * checking auxfile checksums ;-) ...                                                                                 [ ok ]

 * checking miscfile checksums ;-) ...                                                                                [ ok ]

>>> cfg-update-1.8.2-r1: Checksum index is up-to-date ...

 * Determining the location of the kernel source code

 * Found kernel source directory:

 *     /usr/src/linux

 * Found kernel object directory:

 *     /lib/modules/2.6.28-gentoo-r5/build

 * Found sources for kernel version:

 *     2.6.28-gentoo-r5

 * Checking for suitable kernel configuration options...                                                               [ ok ]

>>> Unpacking source...

>>> Unpacking gspcav1-20071224.tar.gz to /var/tmp/portage/media-video/gspcav1-20071224/work

 * Converting gspcav1-20071224/Makefile to use M= instead of SUBDIRS= ...                                              [ ok ]

>>> Source unpacked in /var/tmp/portage/media-video/gspcav1-20071224/work

>>> Compiling source in /var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224 ...

ln: creating symbolic link `Module.symvers': File exists

 * Preparing gspca module

make -j2 HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS= KERNELDIR=/usr/src/linux default

make -C /usr/src/linux M=/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224 CC=cc modules

make[1]: Entering directory `/usr/src/linux-2.6.28-gentoo-r5'

  CC [M]  /var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.o

  CC [M]  /var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/decoder/gspcadecoder.o

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c:54:27: error: asm/semaphore.h: No such file or directory

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c: In function 'spca5xx_ioctl':

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c:2463: error: implicit declaration of function 'video_usercopy'

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c: At top level:

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c:2609: error: unknown field 'owner' specified in initializer

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c:2609: warning: initialization from incompatible pointer type

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c:2611: error: unknown field 'type' specified in initializer

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c: In function 'spca50x_create_sysfs':

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c:2769: error: implicit declaration of function 'video_device_create_file'

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c:2780: error: implicit declaration of function 'video_device_remove_file'

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c: In function 'spca5xx_probe':

/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.c:4301: error: incompatible types in assignment

make[2]: *** [/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224/gspca_core.o] Error 1

make[2]: *** Waiting for unfinished jobs....

make[1]: *** [_module_/var/tmp/portage/media-video/gspcav1-20071224/work/gspcav1-20071224] Error 2

make[1]: Leaving directory `/usr/src/linux-2.6.28-gentoo-r5'

make: *** [default] Error 2

 *

 * ERROR: media-video/gspcav1-20071224 failed.

 * Call stack:

 *               ebuild.sh, line   49:  Called src_compile

 *             environment, line 3239:  Called linux-mod_src_compile

 *             environment, line 2500:  Called die

 * The specific snippet of code:

 *               eval "emake HOSTCC="$(tc-getBUILD_CC)"                                                 CROSS_COMPILE=${CHOST}-                                              LDFLAGS="$(get_abi_LDFLAGS)"                                            ${BUILD_FIXES}                                               ${BUILD_PARAMS}                                                 ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";

 *  The die message:

 *   Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS=  KERNELDIR=/usr/src/linux default

 *

 * If you need support, post the topmost build error, and the call stack if relevant.

 * A complete build log is located at '/var/tmp/portage/media-video/gspcav1-20071224/temp/build.log'.

 * The ebuild environment file is located at '/var/tmp/portage/media-video/gspcav1-20071224/temp/environment'.

```

----------

