内核编译错误

3
我试图编译 Linux 内核。
我遇到了以下错误: "No rule to make target arch/x86/kernel/entry_32.o', needed byarch/x86/kernel/built-in.o'."
在此之前,我使用 "make gconfig" 配置了内核(除了默认选项外,没有进行任何额外操作)。配置文件已生成。我使用 x86 32 位机器(Fedora 9)和内核版本2.6.30。
最后我使用了: "make bzImage" 进行编译。
我尝试在网络上搜索解决方案,但没有成功。 如何修复这些错误?? 请帮忙。 谢谢, Sourabh

也许在superuser.com上提问会更好。 - cupakob
2
双重发布在SuperUser上(并附带一条评论,表明它更适合在StackOverflow上XD)http://superuser.com/questions/54732/linux-kernel-compilation-error - Bobby
2
我认为这完全属于"与编程相关"的范畴。适合在SO上发布。 - Bill the Lizard
我不知道人们会为Fedora 9编译新的内核 - 我以为他们总是使用操作系统提供的预编译内核! - Kieveli
这对于SO来说完全合适。 - Tim Post
@ kieveli:人们不会为Fedora 9编译新内核,但一些人可以在Fedora 9上编译新内核。 - sourabh jaiswal
3个回答

3

在执行make bzImage之前,您需要先调用make命令。

如果您已经出现了问题,执行make clean或make mrproper可能会有所帮助。


1
刚准备发布一些步骤,从mrproper开始。是的,他应该执行mrproper,执行xconfig(或者)menuconfig,保存当前内核配置,然后只需输入'make'。 - Tim Post
我已经尝试了make clean和make mrproper两种方法。 但是错误仍然存在... - sourabh jaiswal
删除该目录,并再次按照更仔细的指示重新提取源代码。 :) - leppie

1

我同意之前的回答,你应该看一下如何使用 Fedora 的方式编译内核(这里)。不确定这是否仍然是最新的,但有时利用提供的工具是个好主意。


0
也许你实际上没有配置内核。你使用了"make config"、"make menuconfig"或者"make xconfig"吗?
你是在运行x86发行版还是x86_64的?如果是后者,你还需要安装x86 32位编译环境。
建议:这个问题提得不够清楚。你没有提供任何相关信息:Linux发行版和架构,你想要编译的内核版本,你尝试过的命令以及收到的错误信息。

我使用make gconfig配置了内核。 配置文件已生成。 我正在使用x86 32位机器(Fedora 9)的内核版本2.6.30。最后,我使用make bzImage进行编译。 - sourabh jaiswal

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接