ChinaUnix.net
相关文章推荐:

内核模块编译

现在正在做一款USB键盘的 linux驱动,因为上面的一些为非标准键要做的和windows一样,所以就麻烦了,为了实现功能,首先要使上层程序能够抓到scancode。这样就需要给内核打补丁,或者编译内核模块。我用加载内核模块的方法,可是编译的时候出现一大堆的问题。那个文件的*.c档基本和/usr/src/linux -2.4.20-8/drivers/usb/usbkbd.c 一样。当我用同样的方法编译usbkbd.c的时候出现同样的问题。编译命令 gcc –c usbkbd.c。 或者用 gc...

by wanganjun78 - 内核/嵌入技术 - 2004-03-24 10:32:35 阅读(516) 回复(0)

相关讨论

现在正在做一款USB键盘的 linux驱动,因为上面的一些为非标准键要做的和windows一样,所以就麻烦了,为了实现功能,首先要使上层程序能够抓到scancode。这样就需要给内核打补丁,或者编译内核模块。我用加载内核模块的方法,可是编译的时候出现一大堆的问题。那个文件的*.c档基本和/usr/src/linux -2.4.20-8/drivers/usb/usbkbd.c 一样。当我用同样的方法编译usbkbd.c的时候出现同样的问题。编译命令 gcc –c usbkbd.c。 或者用 gc...

by wanganjun78 - 内核源码 - 2004-03-24 10:32:35 阅读(1110) 回复(0)

下面是我用的原码! 1 #include 2 3 int int_module(void){ 4 printk(" <1> hello world!\n"); 5 return 0; 6 } 7 8 void cleanup_module(void){ 9 printk(" <1> goodbye!\n"); 10 } 我用来编译的命令arm-linux-gcc -o hello.o _D__KERNEL__ -DMODULE -I /home/linux-2.6.38/include -c hello.c 错误为 arm-linux-gcc: _D__KERNEL__: No such file or direct...

linux

by xy598646744 - 驱动开发 - 2013-03-30 23:46:35 阅读(2756) 回复(3)

代码很简单,如下: #include #include #include #include static void recv_handler(struct sock * sk, int length) { } static int __init netlink_exam_init(void) { /* netlink_exam_sock = netlink_kernel_create(NETLINK_GENERIC, 0, recv_handler, THIS_MODULE); if (!netlink_exam_sock) { printk("[TEST]Fail to create netl...

by zzxblsy - 内核源码 - 2009-07-29 15:11:14 阅读(1465) 回复(1)

测试驱动开发平台 为了后续学习的顺利进行,我们利用最简单的hello,world程序,在内核上挂载和卸载我们自己编写的hello模块。说明:本文调试环境VMware Workstation 5.0+TurboLinux 10,教材是《Linux Device Drivers》第3版英文电子图书。 一、编写hello.c文件 利用vi编辑器,我们键入下面的代码,并保存为hello.c文件。 /** * hello.c * ------Test for kernel module */ #i nclude linux/init.h> #i nclude linux/modul...

by 白石 - Linux文档专区 - 2007-01-09 13:25:46 阅读(878) 回复(0)

各位大侠, 在编译linux内核时,如果将某驱动设置为*,即将模块编译进内核。是否就是在linux内核启动过程中会加载该模块? 如果将某驱动设置为M,即编译为模块。是否需要linux内核启动过程中根据device tree 确定是否加载该模块? 非常感谢!

by harvey_perfect - 嵌入式开发 - 2013-10-12 22:26:12 阅读(2764) 回复(11)

各位大侠, 在编译linux内核时,如果将某驱动设置为*,即将模块编译进内核。是否就是在linux内核启动过程中会加载该模块? 如果将某驱动设置为M,即编译为模块。是否需要linux内核启动过程中根据device tree 确定是否加载该模块? 非常感谢!

by harvey_perfect - Linux新手园地 - 2013-09-26 21:28:48 阅读(1013) 回复(2)

大家好,我知道内核模块编译可以分为两种,一种在内核源码树内编译,另一种在内核源码树外编译。 1、在内核源码树内编译主要是修改Kconfig和Makefile (1)比如有个hello.c模块源代码,我只要把它放到内核源码树的drivers/char/目录下, 修改drivers/char/目录下的Kconfig , 添加如下语句 config HELLO_MODULE tristate "modules device support" default y help Say Y here,the modules will be build in k...

by 风流亡民 - 驱动开发 - 2012-07-30 11:31:56 阅读(965) 回复(0)

小弟近日在做一个v4l2相关的项目 里面有个驱动模块,源文件只有video-buf.c 在这个源文件中并没有module_int()与module_exit() 只有下面几个东西: module_param(debug, int, 0644); MODULE_DESCRIPTION("helper module to manage video4linux pci dma buffers"); MODULE_AUTHOR("Gerd Knorr <[email]kraxel@bytesex.org[/email]> [SuSE Labs]"); MODULE_LICENSE("GPL"); EXPORT_SYMBOL_GPL(videobuf_vmalloc_to_sg); 。。。。E...

by vincentve - 驱动开发 - 2012-04-22 13:35:42 阅读(1132) 回复(0)

小弟近日在做一个v4l2相关的项目 里面有个驱动模块,源文件只有video-buf.c 在这个源文件中并没有module_int()与module_exit() 只有下面几个东西: module_param(debug, int, 0644); MODULE_DESCRIPTION("helper module to manage video4linux pci dma buffers"); MODULE_AUTHOR("Gerd Knorr <[email]kraxel@bytesex.org[/email]> [SuSE Labs]"); MODULE_LICENSE("GPL"); EXPORT_SYMBOL_GPL(videobuf_vmalloc_to_sg); 。。。。E...

by vincentve - 嵌入式开发 - 2012-04-23 13:30:22 阅读(1094) 回复(2)

本帖最后由 shaohua312 于 2011-11-09 23:15 编辑 make[3]: *** 没有规则可以创建“net/ipv4/netfilter/ipt_ECN.o”需要的目标“net/ipv4/netfilter/ipt_ECN.c”。 停止。 make[2]: *** [net/ipv4/netfilter] 错误 2 make[1]: *** [net/ipv4] 错误 2 make: *** [net] 错误 2 我打开文件目录发现确实没有ipt_ECN.c这个文件,我就在makefile里面将这个条件给注释掉了,在编译又发现同样的问题,只是缺少的是别的c文件,请问大家...

linux

by shaohua312 - Linux环境编程 - 2011-11-11 21:53:04 阅读(4351) 回复(11)