一些关于ARM驱动的问题 make menuconfig && implicit declaration of function

这两天在倒腾ARM的内核驱动编程,遇到了一些问题,比较头疼,不过已经解决,认为有意义也就记录一下。

    由于ARM内核驱动的编写和环境的配置关系很紧密,所以先做以下声明,不同的配置可能适用,也可能不适用,仅供参考。

     ARM内核版本:2.6.24.4

     PC操作系统:  Ubuntu Desktop10.04

     ARM-LINUX-GCC版本:3.4.1

     遇到问题主要有两点:

            一、make menucofig出错

            二、Makefile的时候报错implicit declaration of function

    解决方法:

           对于make menucofig

    提示的错误如下:

  ERROR: make[1]: *** [scripts/kconfig/lxdialog/checklist.o] 错误 1 
make: *** [menuconfig] 错误 2

  安装ncurses-devel,这个是红帽或者FC的安装程序,Ubuntu的需要安装libncurses5-dev

安装指令如下: sudo apt-get install libncurses5-dev 
 //网上有好多一样的指令,就是运行不了,很大的原因是拼写错了,libncurses5写成了 libncurses   很无解
 ***********************************************
    对于 implicit declaration of function ‘set_irq_type’这个错误,字面上是隐式声明错误, 
可能原因有: 
      1   没有把函数所在的c文件生成.o目标文件 
      2   在函数所在的c文件中定义了,但是没有在与之相关联的.h文件中声明 
后来用SourceInsight查看文件关联,发现在 linux/interrupt.h的文件里面并没有声明 ‘set_irq_type'中断请求函数,估计是版本的问题,在版本更新过程中删掉了,后来在interrupt.h 
文件中补上这句的声明就Make顺利了,在ARM板上也顺利的insmod,不过还没有编写简单的C程序测试 
驱动,不过问题已经不大了。Ole~~ (下图蓝色部分为添加的声明)
extern int set_irq_type(unsigned int irq,unsigned int type); 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值