您的位置:首页 > 其它

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

2015-11-09 16:19 316 查看
工作环境: fedora14
目标平台:s3c2440/ s3c6410
开发包内核源码目录:/home/linux-2.6.24-5801
开发包内核版本:2.6.24
交叉编译工具:gcc-3.4.1 及升级版
用 gcc-3.4.6交叉编译3210内核,执行make命令,会提示"*** 混和的隐含和普通规则。 停止。"的错误。这是由于fedora14的Make工具对低版本内核Makefile一些旧的规则兼容不是很好,只需要修改一下开发包内核原码里的 Makefile。对文件/home/rootfs/Makefile修改如下:(新版本分开编译,不在一起)ps:对比下面的修改
把:
/ %/: 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 $@译自http://blog.163.com/lby147612@126/blog/static/1704104522011211113956561/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: