阅读:1193回复:2
求助:嵌入式 usb驱动程序
开发嵌入式Linux的usb驱动有什么特别啊?
我在redhat 上一切正常的小例子,搬到板子上却出错呢? 下面是简单的不能再简单的程序 //test1.c #include <linux/module.h> #include <linux/kernel.h> #include <linux/errno.h> #include <asm/uaccess.h> #include <linux/init.h> #include <linux/slab.h> #include <linux/delay.h> #include <linux/ioctl.h> #include <linux/sched.h> #include <linux/smp_lock.h> #include <linux/devfs_fs_kernel.h> #include <linux/usb.h> #define DRIVER_VERSION "v1.0" #define DRIVER_AUTHOR "TigerZD" #define DRIVER_DESC "Naked Linux USB driver" MODULE_AUTHOR( DRIVER_AUTHOR ); MODULE_DESCRIPTION( DRIVER_DESC ); MODULE_LICENSE("GPL"); static struct usb_driver naked_usb_driver = { name : "nakedusb" }; int init_module(void) { printk("<5>Module is loaded!\n"); /*usb_register(&naked_usb_driver);*/ return 0; } void cleanup_module(void) { printk("<5>Module is unloaded!\n"); /*usb_deregister(&naked_usb_driver);*/ } 下面是编译的命令和警告信息 gcc -D__KERNEL__ -DMODULE -c -I/usr/src/linux_2.4.18_mv30/include -o test.o test.c test.c:37:2: warning: no newline at end of the file make: warning: Clock skew detected. Your build may be incomplete. 也生成了test.o,clock skew 是怎么回事? 然后insmod test.o出错如下 testdriver.o: unresolved symbol _gp_disp 嵌入式linux是montavista 3.0 哪位高人给点建议吧 还要给分啊,我的分太少了,先少给点吧 :D |
|
沙发#
发布于:2004-10-11 17:03
附件中的是我在SNDS100上基于uCLinux做的驱动程序框架!
测试通过! |
|
|
板凳#
发布于:2004-10-12 09:35
谢谢ygm99.
我的问题解决了,在编译的时候加上参数 -fno-pic -mno-abicalls 就可以了。嵌入式和台式机还有区别啊 |
|