环境准备
1、ubuntu18环境,本文使用的是win10的wsl
2、在ubuntu18中安装qemu-system-aarch64
3、下载linaro编译链
正文
1、下载代码
为了方便调试,下载使用了-O 0编译的rlk Linux内核
git clone https://code.aliyun.com/runninglinuxkernel/runninglinuxkernel_4.0.git
编写构建脚本build_qemu_arm64.sh
$ vim build_qemu_arm64.sh
LROOT=$PWD
JOBCOUNT=${JOBCOUNT=$(nproc)}
export PATH=/home/pomelo/toolchain/gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu/bin:$PATH
export ARCH=arm64
export CROSS_COMPILE=aarch64-linux-gnu-
echo "start build kernel image..."
#make defconfig
make debian_defconfig
make -j $JOBCOUNT
执行脚本开始构建
./build_qemu_arm64.sh
2、使用qemu模拟运行
编写运行脚本run_qemu_arm64.sh
$ vim run_qemu_arm64.sh
LROOT=$PWD
JOBCOUNT=${JOBCOUNT=$(nproc)}
export PATH=$PATH:/home/pomelo/toolchain/gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu/bin
export ARCH=arm64
export CROSS_COMPILE=aarch64-linux-gnu-
SMP="-smp 4"
MEM="-m 1024"
if [ $# -eq 1 ] && [ $1 == "debug" ]; then
echo "Enable qemu debug server"
DBG="-s -S"