Ubuntu10.0.4 下编译模块出错-求高手帮忙

内核编译和嵌入式产品的设计与开发
回复
whurs
帖子: 3
注册时间: 2010-10-31 12:32
送出感谢: 0
接收感谢: 0

Ubuntu10.0.4 下编译模块出错-求高手帮忙

#1

帖子 whurs » 2010-10-31 12:40

我在http://www.linuxidc.com/Linux/2010-04/25506p2.htm的文章指导下试着编译模块,但在make命令执行后总是没反应。
命令行显示:make: 没有什么可以做的为 `modules'。
不知道哪里出错了,完全新手,求高手帮解答下,谢谢了。
hello.c

代码: 全选

#include <linux/init.h>;
#include <linux/module.h>;
#include <linux/kernel.h>;
static int hello_init(void)
{
printk(KERN_ALERT "Hello, linux kernel module\n");
return 0;
}
static void hello_exit(void)
{
printk(KERN_ALERT "Goodbye, I've created a linux kernel module sucessfully\n");
}
module_init(hello_init);
module_exit(hello_exit);
MODULE_LICENSE("GPL");
Makefile:

代码: 全选

obj-m:= hello.o
KERNELDIR:= /lib/modules/.../build
PWD:= $(shell pwd)

modules:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules

modules_install:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules_install

结果:
执行make命令后返回结果为:
make: 没有什么可以做的为 `modules'。


求解答,再次感谢。
头像
linjiework
帖子: 240
注册时间: 2009-07-07 19:52
送出感谢: 0
接收感谢: 0

Re: Ubuntu10.0.4 下编译模块出错-求高手帮忙

#2

帖子 linjiework » 2010-10-31 16:29



KERNELDIR:= /lib/modules/.../build

这句话改一下,路径改成你内核的路径。
阿呆 : 天下第一呆!
whurs
帖子: 3
注册时间: 2010-10-31 12:32
送出感谢: 0
接收感谢: 0

Re: Ubuntu10.0.4 下编译模块出错-求高手帮忙

#3

帖子 whurs » 2010-11-01 22:18

linjiework 写了:

KERNELDIR:= /lib/modules/.../build

这句话改一下,路径改成你内核的路径。
我根据我的机器情况改了下,改成了KERNELDIR:= /lib/modules/2.6.32-25-generic/build
但还是不行,不知道是不是在进行模块编译时要先编译下内核。
whurs
帖子: 3
注册时间: 2010-10-31 12:32
送出感谢: 0
接收感谢: 0

Re: Ubuntu10.0.4 下编译模块出错-求高手帮忙

#4

帖子 whurs » 2010-11-01 22:49

linjiework 写了:

KERNELDIR:= /lib/modules/.../build

这句话改一下,路径改成你内核的路径。
谢谢你了,你说的对,那个地方是要改(那些文章都不提,我们这些刚入门的菜鸟怎么办),后来还不对的问题是出在Makefile中的:
$(MAKE) -C $(KERNELDIR) M=$(PWD) modules
这行直接复制不行,要在行首用tab键排下版,等 变量都变绿了就行了(不知道为什么要这样排下。。)。
再次谢谢你了。
现在问题解决了,终于将HelloWorld搞好了。
kingDxing
帖子: 1
注册时间: 2010-11-05 13:05
送出感谢: 0
接收感谢: 0

Re: Ubuntu10.0.4 下编译模块出错-求高手帮忙

#5

帖子 kingDxing » 2010-11-05 13:19

我将你的代码在我的ubuntu下运行一遍,还是不行啊,
出现如下的错误
make: *** 没有规则可以创建目标“programmimg”。 停止。
我的环境也是10.0.4
这个问题困扰我两天了
求解啊!!!
回复

回到 “内核及嵌入式开发”