免费注册 查看新帖 |

Chinaunix

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

gcc -D_KERNEL_ -DMODULE -DLINUX -I /usr/src/linux-2.4/include [复制链接]

论坛徽章:
0
跳转到指定楼层
[收藏(0)] [报告]
发表于 2007-09-17 17:04 |只看该作者 |正序浏览
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
23 [报告]
发表于 2007-09-19 15:34 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
22 [报告]
发表于 2007-09-19 13:22 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
21 [报告]
发表于 2007-09-18 15:07 |只看该作者
解决了吗,小孩?
我刚在我的虚拟机上试了一下,可以了.

-D_KERNEL_这里改成两个下划线,然后
-I /usr/src/linux-2.4
这里改成 -I /usr/src/linux-2.4.20-8就可以了.
不过linux-2.4.20-8是我的虚拟机上的版本,根据你的改一下就可以了.

论坛徽章:
0
20 [报告]
发表于 2007-09-18 13:40 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
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
19 [报告]
发表于 2007-09-18 13:37 |只看该作者
原帖由 xuxd32 于 2007-9-18 13:26 发表
编译模块
值得说明的是,编译模块的make file的文件名必须是Makefile,而不能是makefile

Makefile的代码
代码:
ifneq ($(KERNELRELEASE),)
obj-m := helloworld.o
else
KERNELDIR ?= /lib/modu ...


上面说的时2.6下编译的方法,LZ首先要确定你的内核版本号,然后去找相应版本内核及驱动的编译方法。

2.4和2.6的方法是不一样的,要搞清楚,

论坛徽章:
0
18 [报告]
发表于 2007-09-18 13:31 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
17 [报告]
发表于 2007-09-18 13:26 |只看该作者
提示: 作者被禁止或删除 内容自动屏蔽

论坛徽章:
0
16 [报告]
发表于 2007-09-18 13:24 |只看该作者
原帖由 xuxd32 于 2007-9-17 17:04 发表
gcc -D_KERNEL_ -DMODULE -DLINUX -I /usr/src/linux-2.4/include -c -o globalvar.o globalvar.c
执行错误。

我的第一个字符驱动编程。不知怎样编译。网上找了一文章。可是照做时。出现错误。请大侠指点。多谢


-D__KERNEL__

是两个下划线,你好像只有一个下划线,不知道是不是这个原因,你试一下.

论坛徽章:
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
15 [报告]
发表于 2007-09-18 13:22 |只看该作者
网上关于如何编译2.4或者2.6下驱动程序,以及如何配置内核有很不同程度的说明,LZ只需搜索一下,然后找到比较详细的文章,自己多尝试一下。
如果想尝试2.6下的内核编译及驱动加载,我之前写过一篇总结,LZ可以参考一下:
http://linux.chinaunix.net/bbs/v ... p;highlight=Godbach

论坛徽章:
0
14 [报告]
发表于 2007-09-18 13:19 |只看该作者
原帖由 xuxd32 于 2007-9-18 13:07 发表
对不起,我不太懂哟。是不是在网上下载一个我的lnux-2.4-18的内核源文件。然后拷在一个目录下。如: /usr/src/local下。
运行gcc -D_KERNEL_ -DMODULE -DLINUX -I /usr/src/local -c -o file.o file.c
是不是呀 ...


嗯.是的,先在www.kernel.org上面去下载一个内核放到一个目录下,如/usr/src/local/

在网上给你找了一份2.4内核编译的方法, 你可以看看.
http://blog.chinaunix.net/u/23204/showart.php?id=161977

现在2.6的编译方法就更方便,直接就是
make mrproper
make menuconfig
make
make install
reboot
这几个命令就可以了. 我记得2.4的好像要复杂一点.
  

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

清除 Cookies - ChinaUnix - Archiver - WAP - TOP