step23是led驱动,按照教材把程序编写好后,到了使用命令make SUBDIR=drivers/char/ modules这一步,一下是编译信息:
[root@localhost linux-2.6.30.4]# make SUBDIR=drivers/char/ modules
CHK include/linux/version.h
make[1]: `include/asm-arm/mach-types.h' is up to date.
CHK include/linux/utsrelease.h
SYMLINK include/asm -> include/asm-arm
CALL scripts/checksyscalls.sh
<stdin>:1097:2: warning: #warning syscall fadvise64 not implemented
<stdin>:1265:2: warning: #warning syscall migrate_pages not implemented
<stdin>:1321:2: warning: #warning syscall pselect6 not implemented
<stdin>:1325:2: warning: #warning syscall ppoll not implemented
<stdin>:1365:2: warning: #warning syscall epoll_pwait not implemented
GZIP kernel/config_data.gz
IKCFG kernel/config_data.h
CC [M] kernel/configs.o
CC [M] drivers/char/EmbedSky_leds.o
drivers/char/EmbedSky_leds.c:11:32: error: asm/arch/regs-gpio.h: No such file or directory
drivers/char/EmbedSky_leds.c:12:26: error: asm/hardware.h: No such file or directory
drivers/char/EmbedSky_leds.c:23: error: 'S3C2410_GPB5' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:24: error: 'S3C2410_GPB6' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:25: error: 'S3C2410_GPB7' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:26: error: 'S3C2410_GPB8' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:31: error: 'S3C2410_GPB5_OUTP' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:31: error: initializer element is not constant
drivers/char/EmbedSky_leds.c:31: error: (near initialization for 'led_cfg_table[0]')
drivers/char/EmbedSky_leds.c:32: error: 'S3C2410_GPB6_OUTP' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:32: error: initializer element is not constant
drivers/char/EmbedSky_leds.c:32: error: (near initialization for 'led_cfg_table[1]')
drivers/char/EmbedSky_leds.c:33: error: 'S3C2410_GPB7_OUTP' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:33: error: initializer element is not constant
drivers/char/EmbedSky_leds.c:33: error: (near initialization for 'led_cfg_table[2]')
drivers/char/EmbedSky_leds.c:34: error: 'S3C2410_GPB8_OUTP' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:34: error: initializer element is not constant
drivers/char/EmbedSky_leds.c:34: error: (near initialization for 'led_cfg_table[3]')
drivers/char/EmbedSky_leds.c: In function 'EmbedSky_leds_ioctl':
drivers/char/EmbedSky_leds.c:56: error: implicit declaration of function 's3c2410_gpio_setpin'
drivers/char/EmbedSky_leds.c: In function 'EmbedSky_leds_init':
drivers/char/EmbedSky_leds.c:94: error: implicit declaration of function 'class_device_create'
drivers/char/EmbedSky_leds.c: In function 'EmbedSky_leds_exit':
drivers/char/EmbedSky_leds.c:102: error: implicit declaration of function 'class_device_destroy'
make[2]: *** [drivers/char/EmbedSky_leds.o] Error 1
make[1]: *** [drivers/char] Error 2
make: *** [drivers] Error 2
[root@localhost linux-2.6.30.4]# vi drivers/char/EmbedSky_leds.c
[root@localhost linux-2.6.30.4]# make SUBDIR=drivers/char/ modules
CHK include/linux/version.h
make[1]: `include/asm-arm/mach-types.h' is up to date.
CHK include/linux/utsrelease.h
SYMLINK include/asm -> include/asm-arm
CALL scripts/checksyscalls.sh
<stdin>:1097:2: warning: #warning syscall fadvise64 not implemented
<stdin>:1265:2: warning: #warning syscall migrate_pages not implemented
<stdin>:1321:2: warning: #warning syscall pselect6 not implemented
<stdin>:1325:2: warning: #warning syscall ppoll not implemented
<stdin>:1365:2: warning: #warning syscall epoll_pwait not implemented
CC [M] drivers/char/EmbedSky_leds.o
drivers/char/EmbedSky_leds.c:23: error: 'S3C2410_GPB5' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:24: error: 'S3C2410_GPB6' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:25: error: 'S3C2410_GPB7' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:26: error: 'S3C2410_GPB8' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:31: error: 'S3C2410_GPB5_OUTP' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:31: error: initializer element is not constant
drivers/char/EmbedSky_leds.c:31: error: (near initialization for 'led_cfg_table[0]')
drivers/char/EmbedSky_leds.c:32: error: 'S3C2410_GPB6_OUTP' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:32: error: initializer element is not constant
drivers/char/EmbedSky_leds.c:32: error: (near initialization for 'led_cfg_table[1]')
drivers/char/EmbedSky_leds.c:33: error: 'S3C2410_GPB7_OUTP' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:33: error: initializer element is not constant
drivers/char/EmbedSky_leds.c:33: error: (near initialization for 'led_cfg_table[2]')
drivers/char/EmbedSky_leds.c:34: error: 'S3C2410_GPB8_OUTP' undeclared here (not in a function)
drivers/char/EmbedSky_leds.c:34: error: initializer element is not constant
drivers/char/EmbedSky_leds.c:34: error: (near initialization for 'led_cfg_table[3]')
drivers/char/EmbedSky_leds.c: In function 'EmbedSky_leds_ioctl':
drivers/char/EmbedSky_leds.c:56: error: implicit declaration of function 's3c2410_gpio_setpin'
drivers/char/EmbedSky_leds.c: In function 'EmbedSky_leds_init':
drivers/char/EmbedSky_leds.c:94: error: implicit declaration of function 'class_device_create'
drivers/char/EmbedSky_leds.c: In function 'EmbedSky_leds_exit':
drivers/char/EmbedSky_leds.c:102: error: implicit declaration of function 'class_device_destroy'
make[2]: *** [drivers/char/EmbedSky_leds.o] Error 1
make[1]: *** [drivers/char] Error 2
make: *** [drivers] Error 2
大家看这个问题怎么解决?