Errors during Android Kernel build
While experimenting with the Android Kernel included in 3.1 Android several errors occurred which are described here.
Error
In file included from fs/coda/psdev.c:45:
include/linux/coda.h:223: error: expected specifier-qualifier-list before 'u_quad_t'
Solution:
change
CONFIG_CODA_FS=m
to
CONFIG_CODA_FS=n
Error
kernel/cpuset.c: In function 'cpuset_can_attach':
kernel/cpuset.c:1386: error: 'task' undeclared (first use in this function)
kernel/cpuset.c:1386: error: (Each undeclared identifier is reported only once
kernel/cpuset.c:1386: error: for each function it appears in.)
make[1]: *** [kernel/cpuset.o] Error 1
Solution:
in kernel/cpuset.c:1386 change
if ((current != task) && (!capable(CAP_SYS_ADMIN))) {to
if ((current != tsk) && (!capable(CAP_SYS_ADMIN))) {Error
CC drivers/misc/pmem.o
drivers/misc/pmem.c:441: error: conflicting types for 'phys_mem_access_prot'
/home/csf/workspace/android/android-kernel/arch/arm/include/asm/pgtable.h:322: note: previous declaration of 'phys_mem_access_prot' was here
make[2]: *** [drivers/misc/pmem.o] Fehler 1
make[1]: *** [drivers/misc] Fehler 2
make: *** [drivers] Fehler 2
Solution:
change
CONFIG_ANDROID_PMEM=y
to
CONFIG_ANDROID_PMEM=n
Error
fs/binfmt_aout.c: In function 'load_aout_binary':
fs/binfmt_aout.c:256: error: 'SEGMENT_SIZE' undeclared (first use in this function)
fs/binfmt_aout.c:256: error: (Each undeclared identifier is reported only once
fs/binfmt_aout.c:256: error: for each function it appears in.)
make[1]: *** [fs/binfmt_aout.o] Fehler 1
Solution:
change
CONFIG_BINFMT_AOUT=m
to
CONFIG_BINFMT_AOUT=n
Error
In file included from include/drm/drmP.h:76,
from drivers/gpu/drm/i2c/ch7006_priv.h:30,
from drivers/gpu/drm/i2c/ch7006_drv.c:27:
include/drm/drm.h:47:24: error: sys/ioccom.h: No such file or directory
include/drm/drm.h:48:23: error: sys/types.h: No such file or directory
In file included from include/drm/drmP.h:76,
from drivers/gpu/drm/i2c/ch7006_priv.h:30,
from drivers/gpu/drm/i2c/ch7006_drv.c:27:
include/drm/drm.h:49: error: redefinition of typedef '__s8'
include/asm-generic/int-ll64.h:19: note: previous declaration of '__s8' was here
include/drm/drm.h:50: error: redefinition of typedef '__u8'
include/asm-generic/int-ll64.h:20: note: previous declaration of '__u8' was here
include/drm/drm.h:51: error: redefinition of typedef '__s16'
include/asm-generic/int-ll64.h:22: note: previous declaration of '__s16' was here
include/drm/drm.h:52: error: redefinition of typedef '__u16'
include/asm-generic/int-ll64.h:23: note: previous declaration of '__u16' was here
include/drm/drm.h:53: error: redefinition of typedef '__s32'
include/asm-generic/int-ll64.h:25: note: previous declaration of '__s32' was here
include/drm/drm.h:54: error: redefinition of typedef '__u32'
include/asm-generic/int-ll64.h:26: note: previous declaration of '__u32' was here
include/drm/drm.h:55: error: redefinition of typedef '__s64'
include/asm-generic/int-ll64.h:29: note: previous declaration of '__s64' was here
include/drm/drm.h:56: error: redefinition of typedef '__u64'
include/asm-generic/int-ll64.h:30: note: previous declaration of '__u64' was here
make[4]: *** [drivers/gpu/drm/i2c/ch7006_drv.o] Fehler 1Solution:
change
CONFIG_DRM_I2C_CH7006=m
to
CONFIG_DRM_I2C_CH7006=n
Error
In file included from include/drm/drmP.h:76,
from drivers/gpu/drm/mga/mga_drv.c:32:
include/drm/drm.h:47:24: error: sys/ioccom.h: No such file or directory
include/drm/drm.h:48:23: error: sys/types.h: No such file or directory
In file included from include/drm/drmP.h:76,
from drivers/gpu/drm/mga/mga_drv.c:32:
include/drm/drm.h:49: error: redefinition of typedef '__s8'
include/asm-generic/int-ll64.h:19: note: previous declaration of '__s8' was here
include/drm/drm.h:50: error: redefinition of typedef '__u8'
include/asm-generic/int-ll64.h:20: note: previous declaration of '__u8' was here
include/drm/drm.h:51: error: redefinition of typedef '__s16'
include/asm-generic/int-ll64.h:22: note: previous declaration of '__s16' was here
include/drm/drm.h:52: error: redefinition of typedef '__u16'
include/asm-generic/int-ll64.h:23: note: previous declaration of '__u16' was here
include/drm/drm.h:53: error: redefinition of typedef '__s32'
include/asm-generic/int-ll64.h:25: note: previous declaration of '__s32' was here
include/drm/drm.h:54: error: redefinition of typedef '__u32'
include/asm-generic/int-ll64.h:26: note: previous declaration of '__u32' was here
include/drm/drm.h:55: error: redefinition of typedef '__s64'
include/asm-generic/int-ll64.h:29: note: previous declaration of '__s64' was here
include/drm/drm.h:56: error: redefinition of typedef '__u64'
include/asm-generic/int-ll64.h:30: note: previous declaration of '__u64' was here
make[4]: *** [drivers/gpu/drm/mga/mga_drv.o] Fehler 1Solution:
change
CONFIG_DRM_MGA=m
to
CONFIG_DRM_MGA=n
Error
In file included from include/drm/drmP.h:76,
from drivers/gpu/drm/r128/r128_drv.c:32:
include/drm/drm.h:47:24: error: sys/ioccom.h: No such file or directory
include/drm/drm.h:48:23: error: sys/types.h: No such file or directory
In file included from include/drm/drmP.h:76,
from drivers/gpu/drm/r128/r128_drv.c:32:
include/drm/drm.h:49: error: redefinition of typedef '__s8'
include/asm-generic/int-ll64.h:19: note: previous declaration of '__s8' was here
include/drm/drm.h:50: error: redefinition of typedef '__u8'
include/asm-generic/int-ll64.h:20: note: previous declaration of '__u8' was here
include/drm/drm.h:51: error: redefinition of typedef '__s16'
include/asm-generic/int-ll64.h:22: note: previous declaration of '__s16' was here
include/drm/drm.h:52: error: redefinition of typedef '__u16'
include/asm-generic/int-ll64.h:23: note: previous declaration of '__u16' was here
include/drm/drm.h:53: error: redefinition of typedef '__s32'
include/asm-generic/int-ll64.h:25: note: previous declaration of '__s32' was here
include/drm/drm.h:54: error: redefinition of typedef '__u32'
include/asm-generic/int-ll64.h:26: note: previous declaration of '__u32' was here
include/drm/drm.h:55: error: redefinition of typedef '__s64'
include/asm-generic/int-ll64.h:29: note: previous declaration of '__s64' was here
include/drm/drm.h:56: error: redefinition of typedef '__u64'
include/asm-generic/int-ll64.h:30: note: previous declaration of '__u64' was here
make[4]: *** [drivers/gpu/drm/r128/r128_drv.o] Fehler 1Solution:
change
CONFIG_DRM_R128=m
to
CONFIG_DRM_R128=n
Error
In file included from include/drm/drmP.h:76,
from drivers/gpu/drm/radeon/radeon_drv.c:32:
include/drm/drm.h:49: error: redefinition of typedef '__s8'
include/asm-generic/int-ll64.h:19: note: previous declaration of '__s8' was here
include/drm/drm.h:50: error: redefinition of typedef '__u8'
include/asm-generic/int-ll64.h:20: note: previous declaration of '__u8' was here
include/drm/drm.h:51: error: redefinition of typedef '__s16'
include/asm-generic/int-ll64.h:22: note: previous declaration of '__s16' was here
include/drm/drm.h:52: error: redefinition of typedef '__u16'
include/asm-generic/int-ll64.h:23: note: previous declaration of '__u16' was here
include/drm/drm.h:53: error: redefinition of typedef '__s32'
include/asm-generic/int-ll64.h:25: note: previous declaration of '__s32' was here
include/drm/drm.h:54: error: redefinition of typedef '__u32'
include/asm-generic/int-ll64.h:26: note: previous declaration of '__u32' was here
include/drm/drm.h:55: error: redefinition of typedef '__s64'
include/asm-generic/int-ll64.h:29: note: previous declaration of '__s64' was here
include/drm/drm.h:56: error: redefinition of typedef '__u64'
include/asm-generic/int-ll64.h:30: note: previous declaration of '__u64' was here
make[4]: *** [drivers/gpu/drm/radeon/radeon_drv.o] Fehler 1Solution:
change
CONFIG_DRM_RADEON=m
to
CONFIG_DRM_RADEON=n
Error
In file included from include/drm/drmP.h:76,
from drivers/gpu/drm/savage/savage_drv.c:26:
include/drm/drm.h:49: error: redefinition of typedef '__s8'
include/asm-generic/int-ll64.h:19: note: previous declaration of '__s8' was here
include/drm/drm.h:50: error: redefinition of typedef '__u8'
include/asm-generic/int-ll64.h:20: note: previous declaration of '__u8' was here
include/drm/drm.h:51: error: redefinition of typedef '__s16'
include/asm-generic/int-ll64.h:22: note: previous declaration of '__s16' was here
include/drm/drm.h:52: error: redefinition of typedef '__u16'
include/asm-generic/int-ll64.h:23: note: previous declaration of '__u16' was here
include/drm/drm.h:53: error: redefinition of typedef '__s32'
include/asm-generic/int-ll64.h:25: note: previous declaration of '__s32' was here
include/drm/drm.h:54: error: redefinition of typedef '__u32'
include/asm-generic/int-ll64.h:26: note: previous declaration of '__u32' was here
include/drm/drm.h:55: error: redefinition of typedef '__s64'
include/asm-generic/int-ll64.h:29: note: previous declaration of '__s64' was here
include/drm/drm.h:56: error: redefinition of typedef '__u64'
include/asm-generic/int-ll64.h:30: note: previous declaration of '__u64' was here
make[4]: *** [drivers/gpu/drm/savage/savage_drv.o] Fehler 1Solution:
change
CONFIG_DRM_SAVAGE=m
to
CONFIG_DRM_SAVAGE=n
Error
In file included from include/drm/drmP.h:76,
from drivers/gpu/drm/tdfx/tdfx_drv.c:33:
include/drm/drm.h:49: error: redefinition of typedef '__s8'
include/asm-generic/int-ll64.h:19: note: previous declaration of '__s8' was here
include/drm/drm.h:50: error: redefinition of typedef '__u8'
include/asm-generic/int-ll64.h:20: note: previous declaration of '__u8' was here
include/drm/drm.h:51: error: redefinition of typedef '__s16'
include/asm-generic/int-ll64.h:22: note: previous declaration of '__s16' was here
include/drm/drm.h:52: error: redefinition of typedef '__u16'
include/asm-generic/int-ll64.h:23: note: previous declaration of '__u16' was here
include/drm/drm.h:53: error: redefinition of typedef '__s32'
include/asm-generic/int-ll64.h:25: note: previous declaration of '__s32' was here
include/drm/drm.h:54: error: redefinition of typedef '__u32'
include/asm-generic/int-ll64.h:26: note: previous declaration of '__u32' was here
include/drm/drm.h:55: error: redefinition of typedef '__s64'
include/asm-generic/int-ll64.h:29: note: previous declaration of '__s64' was here
include/drm/drm.h:56: error: redefinition of typedef '__u64'
include/asm-generic/int-ll64.h:30: note: previous declaration of '__u64' was here
make[4]: *** [drivers/gpu/drm/tdfx/tdfx_drv.o] Fehler 1Solution:
change
CONFIG_DRM_TDFX=m
to
CONFIG_DRM_TDFX=n
Error
In file included from include/drm/drmP.h:76,
from drivers/gpu/drm/via/via_irq.c:38:
include/drm/drm.h:49: error: redefinition of typedef '__s8'
include/asm-generic/int-ll64.h:19: note: previous declaration of '__s8' was here
include/drm/drm.h:50: error: redefinition of typedef '__u8'
include/asm-generic/int-ll64.h:20: note: previous declaration of '__u8' was here
include/drm/drm.h:51: error: redefinition of typedef '__s16'
include/asm-generic/int-ll64.h:22: note: previous declaration of '__s16' was here
include/drm/drm.h:52: error: redefinition of typedef '__u16'
include/asm-generic/int-ll64.h:23: note: previous declaration of '__u16' was here
include/drm/drm.h:53: error: redefinition of typedef '__s32'
include/asm-generic/int-ll64.h:25: note: previous declaration of '__s32' was here
include/drm/drm.h:54: error: redefinition of typedef '__u32'
include/asm-generic/int-ll64.h:26: note: previous declaration of '__u32' was here
include/drm/drm.h:55: error: redefinition of typedef '__s64'
include/asm-generic/int-ll64.h:29: note: previous declaration of '__s64' was here
include/drm/drm.h:56: error: redefinition of typedef '__u64'
include/asm-generic/int-ll64.h:30: note: previous declaration of '__u64' was here
make[4]: *** [drivers/gpu/drm/via/via_irq.o] Fehler 1Solution:
change
CONFIG_DRM_VIA=m
to
CONFIG_DRM_VIA=n
Error
drivers/input/touchscreen/eeti_ts.c: In function 'eeti_ts_irq_active':
drivers/input/touchscreen/eeti_ts.c:65: error: implicit declaration of function 'irq_to_gpio'
make[3]: *** [drivers/input/touchscreen/eeti_ts.o] Fehler 1
Solution: change
CONFIG_TOUCHSCREEN_EETI=m
to
CONFIG_TOUCHSCREEN_EETI=n
Error
drivers/mmc/host/sdhci.c: In function 'sdhci_enable':
drivers/mmc/host/sdhci.c:1230: error: dereferencing pointer to incomplete type
drivers/mmc/host/sdhci.c:1230: error: 'MMC_TYPE_SDIO' undeclared (first use in this function)
drivers/mmc/host/sdhci.c:1230: error: (Each undeclared identifier is reported only once
drivers/mmc/host/sdhci.c:1230: error: for each function it appears in.)
drivers/mmc/host/sdhci.c: In function 'sdhci_disable':
drivers/mmc/host/sdhci.c:1243: error: dereferencing pointer to incomplete type
drivers/mmc/host/sdhci.c:1243: error: 'MMC_TYPE_SDIO' undeclared (first use in this function)
make[3]: *** [drivers/mmc/host/sdhci.o] Fehler 1
Solution:
change
CONFIG_MMC_SDHCI_PCI=m
CONFIG_MMC_SDHCI=m
to
CONFIG_MMC_SDHCI_PCI=n
CONFIG_MMC_SDHCI=n
Error
drivers/scsi/aic7xxx/aic79xx_core.c:10262: error:
Solution:
change
CONFIG_SCSI_AIC7XXX=m
to
CONFIG_SCSI_AIC7XXX=n
Error
drivers/scsi/aic7xxx/aic79xx_core.c:10262: error
Solution:
change
CONFIG_SCSI_AIC79XX=m
to
CONFIG_SCSI_AIC79XX=n
Error
drivers/scsi/osd/osd_initiator.c: In function 'build_test':
drivers/scsi/osd/osd_initiator.c:67: error: negative width in bit-field '<anonymous>'
drivers/scsi/osd/osd_initiator.c:68: error: negative width in bit-field '<anonymous>'
make[3]: *** [drivers/scsi/osd/osd_initiator.o] Fehler 1
Solution:
change
CONFIG_SCSI_OSD_INITIATOR=m
to
CONFIG_SCSI_OSD_INITIATOR=n
Error
In file included from drivers/usb/gadget/ether.c:114:
drivers/usb/gadget/composite.c: In function 'usb_composite_force_reset':
drivers/usb/gadget/composite.c:121: error: implicit declaration of function 'msleep'
drivers/usb/gadget/composite.c: In function 'usb_add_function':
drivers/usb/gadget/composite.c:158: error: implicit declaration of function 'MKDEV'
Solution:
change
@@ -25,7 +25,8 @@
#include <linux/slab.h>
#include <linux/device.h>
#include <linux/utsname.h>
-
+#include <linux/delay.h>
+#include <linux/kdev_t.h>
#include <linux/usb/composite.h>
Error
fs/built-in.o: In function `efi_partition':
file.c:(.text+0x531e0): undefined reference to `utf16s_to_utf8s'
make: *** [.tmp_vmlinux1] Fehler 1
Solution:
change
CONFIG_EFI_PARTITION=m
to
CONFIG_EFI_PARTITION=n
Error
ERROR: "__bad_udelay" [drivers/video/savage/savagefb.ko] undefined!
ERROR: "__bad_udelay" [drivers/net/sungem.ko] undefined!
ERROR: "__bad_udelay" [drivers/net/irda/donauboe.ko] undefined!
ERROR: "__bad_udelay" [drivers/atm/he.ko] undefined!
WARNING: modpost: Found 1 section mismatch(es).
To see full details build your kernel with:
'make CONFIG_DEBUG_SECTION_MISMATCH=y'
make[1]: *** [__modpost] Fehler 1
dont know what that means, but the kernel seams to be built
Hi, when i compiled the android kernel i got this error-
Can you suggest a solution? thanks,