QQ登录

只需一步,快速开始

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 901|回复: 1

Fedora3下编译内核模块及安装问题,谢谢先

[复制链接]
发表于 2005-5-30 21:40:59 | 显示全部楼层 |阅读模式
在Fedora3下编译内核模块出现问题
/*module_1.c*/
#include<linux/module.h>
#include<linux/kernel.h>
#include<linux/config.h>
#ifdef CONFIG_SMP
#define __SMP__
#endif

int init_module(void)
{
printk("<1>Hello,World.\n");
return 0;
}
void cleanup_module(void)
{
printk("<1>Goodbye...\n");
}

编译: gcc -c -O -W -DMODULE -D__KERNEL__   module_1.c
编译信息:
In file included from /usr/include/linux/module.h:10,
                 from module_1.c:1:
/usr/include/linux/config.h:5:2: #error Incorrectly using glibc headers for a
kernel module

/usr/include/linux/config.h的信息如下
#ifndef _LINUX_CONFIG_H
#define _LINUX_CONFIG_H
#ifdef __KERNEL__
#error Incorrectly using glibc headers for a kernel module
#endif
#endif
后来google了一下说内核2.6以上要用/lib/modules/2.6.9-1.667/build/下内核的Kbuild
来编译所以就
模仿写了一个Makefile
module_1 := module_1.o
KDIR := /lib/modules/2.6.9-1.667/build/
PWD := $(shell pwd)
default:
        $(MAKE) -C $(KDIR) SUBDIRS=$(PWD) module_1
编译信息:
make -C /lib/modules/2.6.9-1.667/build/ SUBDIRS=/root/Study/Modules module_1
make[1]: Entering directory `/lib/modules/2.6.9-1.667/build'
make[1]: *** 没有规则可以创建目标“module_1”。 停止。
make[1]: Leaving directory `/lib/modules/2.6.9-1.667/build'
make: *** [default] 错误 2
不知道是不是$MAKE的问题,echo $MAKE也看不到.还有在我的Fedora3上找不到Rlues.make
编译规则文件.

而关于在Fedora3上关于内核模块编译安装的好像不多.望大虾们赐教!谢谢拉!
发表于 2005-5-31 23:28:05 | 显示全部楼层
可能内核版更适合你。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

GMT+8, 2024-11-5 22:00 , Processed in 0.044408 second(s), 16 queries .

© 2021 Powered by Discuz! X3.5.

快速回复 返回顶部 返回列表