编译环境:CentOs 7.1 Ubuntu 12.0.4 都可以

交叉编译工具:gcc -4.3.2 (博创6410平台)

问题描述:执行make menuconfig命令的时候,提示Makefile:421: *** 混和的隐含和普通规则。 停止。由于高版本make对Makefile的一些旧规则兼               容不是很好,只需要修改Makefile文件即可。

解决流程:

     1.  修改

  config %config: scripts_basic outputmakefile FORCE

   $(Q)mkdir -p include
   $(Q)$(MAKE) $(build)=scripts/kconfig $@
   $(Q)$(MAKE) -C $(srctree) KBUILD_SRC= .kernelrelease

     修改为:

     config: scripts_basic outputmakefile FORCE
   $(Q)mkdir -p include
   $(Q)$(MAKE) $(build)=scripts/kconfig $@
   $(Q)$(MAKE) -C $(srctree) KBUILD_SRC= .kernelrelease
  %config: scripts_basic outputmakefile FORCE
   $(Q)mkdir -p include
   $(Q)$(MAKE) $(build)=scripts/kconfig $@
   $(Q)$(MAKE) -C $(srctree) KBUILD_SRC= .kernelrelease

    2. 修改

  / %/: 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)

     现在就可以正常编译了!

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2021-08-07
  • 2021-06-24
  • 2022-12-23
  • 2022-12-23
  • 2021-06-23
  • 2021-09-22
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-08-18
  • 2021-06-15
  • 2021-11-28
  • 2022-12-23
  • 2021-09-04
相关资源
相似解决方案