您的位置:首页 > 其它

Makefile:混合的隐含和通用规则

2016-02-25 10:55 387 查看
在编译kernel 时,有机会碰见下面的错误:Makefile: *** 混合的隐含和普通规则。停止。

 Makefile: *** mixed implicit and normal rules. Stop.

这个原因可能是Make工具对低版本内核的Makefile一些旧的规则兼容不好,我们只需要修改对应的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 $@
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: