免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4460 | 回复: 12
打印 上一主题 下一主题

老是出错误,如何使用LDD3源代码提问! [复制链接]

论坛徽章:
1
CU十二周年纪念徽章
日期:2013-10-24 15:41:34
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-11-06 10:13 |只看该作者 |倒序浏览
最近想学驱动,然后买了本LDD3,想试着编译LDD3提供的源代码,不过我的内核太新了2.6.30,编译老是出错误,我也下了个2.6.10的内核,不过编译不成功,请问该怎么办阿?你们以前学习的时候是怎么编译的呢,请指导下,谢谢!

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
2 [报告]
发表于 2010-11-07 17:55 |只看该作者
编译不成功,那应该就有报错信息。你可以贴一下你的错误信息,helloworld 也编不过去吗?

论坛徽章:
0
3 [报告]
发表于 2010-11-07 21:49 |只看该作者
我最近,也开始看这本书! hello,world!加载时,
提示:insmod: error inserting 'hello.ko': -1 Invalid module format
这个,有没有比较简单的解决方法!

论坛徽章:
3
金牛座
日期:2014-06-14 22:04:062015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:45
4 [报告]
发表于 2010-11-07 23:00 |只看该作者
最近想学驱动,然后买了本LDD3,想试着编译LDD3提供的源代码,不过我的内核太新了2.6.30,编译老是出错误, ...
rubylc_unix 发表于 2010-11-06 10:13



    请不要抱着一口吃下一个大包子的心理,一个程序一个程序的编译执行来学习,如果你把exampe的代码下载下来,试图make就完全通过,然后运行模块的话,其实对你学习意义不大了。
最好是一个一个分析,哪里编译出错了,找到出错点并解决之。毕竟内核版本差异,导致很多程序函数接口都发生了变化了。

论坛徽章:
3
金牛座
日期:2014-06-14 22:04:062015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:49:45
5 [报告]
发表于 2010-11-07 23:01 |只看该作者
回复 3# comeon_lsl


    如果是helloworld的话,我可以明确的告诉你,我在2.6.35上与2.6.10上一样的程序,都没有问题的。
所以具体问题具体分析,你可以把操作过程和错误的详细信息贴出来一下

论坛徽章:
36
IT运维版块每日发帖之星
日期:2016-04-10 06:20:00IT运维版块每日发帖之星
日期:2016-04-16 06:20:0015-16赛季CBA联赛之广东
日期:2016-04-16 19:59:32IT运维版块每日发帖之星
日期:2016-04-18 06:20:00IT运维版块每日发帖之星
日期:2016-04-19 06:20:00每日论坛发贴之星
日期:2016-04-19 06:20:00IT运维版块每日发帖之星
日期:2016-04-25 06:20:00IT运维版块每日发帖之星
日期:2016-05-06 06:20:00IT运维版块每日发帖之星
日期:2016-05-08 06:20:00IT运维版块每日发帖之星
日期:2016-05-13 06:20:00IT运维版块每日发帖之星
日期:2016-05-28 06:20:00每日论坛发贴之星
日期:2016-05-28 06:20:00
6 [报告]
发表于 2010-11-08 00:12 |只看该作者
请不要抱着一口吃下一个大包子的心理,一个程序一个程序的编译执行来学习,如果你把exampe的代码下载下来,试图make就完全通过,然后运行模块的话,其实对你学习意义不大了。
最好是一个一个分析,哪里编译出错了,找到出错点并解决之。毕竟内核版本差异,导致很多程序函数接口都发生了变化了

非常赞同 dreamice 兄的话。最好一个一个程序的来,不要一下子全编译,多多少少会存在一些示例源码在你的系统上编译有问题的。

最好还是由浅入深进行。由 helloworld 入手,熟练之后,就算源码编译有报错,可能你都已经可以自己找出原因了。

论坛徽章:
3
卯兔
日期:2013-08-26 22:14:57未羊
日期:2013-09-08 19:16:05未羊
日期:2014-10-23 10:34:12
7 [报告]
发表于 2010-11-08 09:26 |只看该作者
本想说让LZ多翻翻书的,又怕打击LZ积极性,呵呵,dreamice字字珠玑啊

如果连Linux环境的基本操作都不明白什么意思的话,你编那些代码基本没什么意义,所谓工欲善其事,必先利其器

论坛徽章:
0
8 [报告]
发表于 2010-11-08 12:14 |只看该作者
回复 5# dreamice

大侠,您好:
           我已经构建了内核树,并且hello world程序也编译出了.ko等一系列文件。但是在insmod ./hello.ko时出现上面的提示。下面是错误的具体信息。
[root@localhost ff]# cat /var/log/messages |tails
Nov  8 10:23:53 localhost kernel: hello: version magic '2.6.18.8 SMP 686 REGPARM gcc-4.1' should be '2.6.18-53.el5 SMP mod_unload 686 REGPARM 4KSTACKS gcc-4.1'
[root@localhost ff]# modinfo hello.ko
filename:       hello.ko
license:        Dual BSD/GPL
depends:        
vermagic:       2.6.18.8 SMP 686 REGPARM gcc-4.1

论坛徽章:
0
9 [报告]
发表于 2010-11-11 08:32 |只看该作者
comeon_lsl 同志注意看提示信息:
[root@localhost ff]# cat /var/log/messages |tails
Nov  8 10:23:53 localhost kernel: hello: version magic '2.6.18.8 SMP 686 REGPARM gcc-4.1' should be '2.6.18-53.el5 SMP mod_unload 686 REGPARM 4KSTACKS gcc-4.1'

你的开发板上的linux版本号和你构建的内核树的版本号不一致。
'2.6.18.8 SMP

'2.6.18-53.el5 SMP
重新编译内核树,在编译时注意配置makemenuconfig项中的linux版本号,注意可能要修改根目录下的Makefile中定义的Version号
多试试  我之前也碰到过这个问题

论坛徽章:
0
10 [报告]
发表于 2010-11-11 08:33 |只看该作者
修改这两个一致即可
'2.6.18.8 SMP 686 REGPARM gcc-4.1'

'2.6.18-53.el5 SMP mod_unload 686 REGPARM 4KSTACKS gcc-4.1'
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP