主题 : 请教一个内核模块交叉编译的问题 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 52255
精华: 0
发帖: 9
金钱: 45 两
威望: 9 点
综合积分: 18 分
注册时间: 2011-07-15
最后登录: 2011-07-25
楼主  发表于: 2011-07-22 19:00

 请教一个内核模块交叉编译的问题

要在mini6410已经运行的Android中insmod内核模块,我的做法是:
写好一个hello world模块(在加载的时候会printk,然后直到卸载就什么都不做了)名字叫hello.c
用arm-linux-gcc编译了光盘里的android内核,内核源码文件夹比如为/root/sourcelinux
然后makefile里指定这个文件夹为KERNELDIR
最后用make指令指定编译器 make ARCH=arm CROSS_COMPILE=arm-linux-
不知道这么写对不对,arm-linux-gcc的编译器用的就是光盘里提供的4.5.1
编译没报错,生成hello.ko,放到android的/data/下:
insmod hello.ko
没有报错也没有printk的信息
rmmod竟然还可以(如果不insmod,直接rmmod会报错),貌似加载成功了,但为什么没有printk呢?
多谢
级别: 新手上路
UID: 52255
精华: 0
发帖: 9
金钱: 45 两
威望: 9 点
综合积分: 18 分
注册时间: 2011-07-15
最后登录: 2011-07-25
1楼  发表于: 2011-07-25 09:51
还在关注中……
级别: 新手上路
UID: 52255
精华: 0
发帖: 9
金钱: 45 两
威望: 9 点
综合积分: 18 分
注册时间: 2011-07-15
最后登录: 2011-07-25
2楼  发表于: 2011-07-25 18:05
一天都没有人理
这问题解决了,还是谢谢……
写一下 以后有人碰到这个问题 一搜就可以了
内核加载成功了 只是printk向终端打印的问题
用dmesg就可以看到打印信息了