天嵌 ARM开发社区

 找回密码
 注册
查看: 2424|回复: 3

step23无法生成.ko文件

[复制链接]
小胖子 发表于 2010-7-26 09:27:30 | 显示全部楼层 |阅读模式
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

大家看这个问题怎么解决?
hanzhi87 发表于 2010-7-31 14:27:04 | 显示全部楼层
1# 小胖子


遇到同样的问题,加了下面的几个头文件少了几个错误但是最后的两个没有解决。
#include <mach/hardware.h>
#include <mach/regs-gpio.h>
#include <mach/leds-gpio.h>
回复

使用道具 举报

hanzhi87 发表于 2010-7-31 14:48:13 | 显示全部楼层
http://blog.chinaunix.net/u3/110644/showart_2208979.html
这个网址可以解决上述问题
回复

使用道具 举报

亚瑟王 发表于 2010-8-2 19:58:59 | 显示全部楼层
编译出错了,肯定不会生成.ko文件了。头文件的修改方法如2楼所示。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

i.MX8系列ARM cortex A53 M4 工控板上一条 /1 下一条

Archiver|手机版|小黑屋|天嵌 嵌入式开发社区 ( 粤ICP备11094220号-2 )

GMT+8, 2025-5-2 01:59 , Processed in 2.036991 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表