您的位置:首页 > 其它

Makefile‘混和的隐含和普通规则’错误的解决

2011-03-10 20:00 337 查看
http://www.kernel.org/pub/

工作环境: fedora14

[转:http://my.chinaunix.net/space.php?uid=25298908&do=blog&id=101009]


目标平台:龙芯3210开发板

开发包内核源码目录:/home/linux_3210

开发包内核版本:2.6.18.1

交叉编译工具:gcc-3.4.6


用gcc-3.4.6交叉编译3210内核,执行make命令,会提示"*** 混和的隐含和普通规则。 停止。"
的错误。这是由于fedora14的Make工具对低版本内核Makefile一些旧的规则兼容不是很好,只需要修改一下开发包内核原码里的Makefile。对文件/home/linux_3210/Makefile修改如下:

把:

/ %/: prepare scripts FORCE

$(Q)$(MAKE) KBUILD_MODULES=$(if $(CONFIG_MODULES),1) /

$(build)=$(build-dir)

改成:

/: prepare scripts FORCE

$(Q)$(MAKE) KBUILD_MODULES=$(if $(CONFIG_MODULES),1) /

$(build)=$(build-dir)

%/: prepare scripts FORCE

$(Q)$(MAKE) KBUILD_MODULES=$(if $(CONFIG_MODULES),1) /

$(build)=$(build-dir)

把:

config %config: scripts_basic outputmakefile FORCE

$(Q)mkdir -p include/linux include/config

$(Q)$(MAKE) $(build)=scripts/kconfig $@

改成:

config: scripts_basic outputmakefile FORCE

$(Q)mkdir -p include/linux include/config

$(Q)$(MAKE) $(build)=scripts/kconfig $@

%config: scripts_basic outputmakefile FORCE

$(Q)mkdir -p include/linux include/config

$(Q)$(MAKE) $(build)=scripts/kconfig $@
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐