前一篇博客说到的问题,经过补课后才知道,出现这个问题的原因。
1、kernel目录下的Makefile中ARCH赋值方式为:
export KBUILD_BUILDHOST := $(SUBARCH)
ARCH ?= $(SUBARCH)
CROSS_COMPILE ?= $(CONFIG_CROSS_COMPILE:"%"=%)
2、根目录下的Kconfig内容为:
mainmenu "Linux/$ARCH $KERNELVERSION Kernel Configuration"
config SRCARCH
string
option env="SRCARCH"
source "arch/$SRCARCH/Kconfig"
没有指定ARCH前,默认使用的是编译计算机的CPU结构,因为本机编译的PC是X64,所以make menuconfig看到结构为X86_64: