在Fedora9中搭建驱动开发环境

    小菜刚刚开始学习驱动开发,啥都不会,就知道hello world……

本来以为写个helloworld很容易吧~的确容易~你要是懒的话直接抄书本上就可以了~

于是helloworld写出来了,在写makefile的时候才发现,fedora 9本身没安装源码~好吧,那就安装源码吧。于是到fedora官网下了个源码的rpm包~

按照网上说明的方法安装了一下~过程顺利,没啥问题

把配置文件从boot那里cp过来改名成.config,这样做是为了确保这个内核跟系统的内核有一致的配置,不然出现啥问题就杯具了。然后我直接就编译内核了,make oldconfig ,make dep make,,花了N久的时间,期间我还看了一部非诚勿扰…………

于是看完之后发现还没编译完……崩溃……

吃完饭回来发现终于编译完了,- -!于是满心欢喜的试着编译一下我的helloworld模块,编译成功!

不过insmod的时候出现了让人无法理解的错误:invalid module format

google了一下,原来在驱动装载失败的时候会在/var/log/message这个文件里面记录下失败的原因,于是去看了一下,发现是描述内核版本的那个字符串不对~~就是,我的驱动里面描述内核版本的字符串跟我的fedora内核描述版本的字符串不一样~于是内核就拒绝我了~

又google了一下解决办法,原来很简单,修改主makefile文件里面的EXTRAVERSION这个变量的值,就在最上面,很好找的。改到跟message提示的那个格式一摸一样就行了。

然后我发现貌似我又得编译一次内核…………

- -!

事实上不必完全编译完内核,当然完全编译完的话会好点。一般看见CC出现的话按下Ctrl+C直接终止编译,因为我们需要的文件已经出来了,不必再费事去编译。

然后这个时候再去编译驱动,成功,insmod 成功!

好了,记录就先写到这~

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值