在搭建 buildroot qemu arm 环境前,需要先安装以下软件:
- Build essential:包含编译器、链接器等构建基本工具
sudo apt-get install build-essential
- Git:用于版本控制和下载源代码
sudo apt-get install git-core
- QEMU:模拟器,可以运行 ARM 系统镜像
sudo apt-get install qemu-system-arm
接下来按照以下步骤进行环境搭建:
- 下载 Buildroot
进入任意目录,如/home/yourname/,下载 Buildroot:
git clone git://git.buildroot.net/buildroot
cd buildroot/
- 配置 Buildroot
使用 make menuconfig 命令配置 buildroot:
make menuconfig
在弹出的配置界面中选择以下选项:
Target options -> Target Architecture: ARM (little endian) Toolchain -> Toolchain type: External toolchain (注意这里不是 Crosstool-ng) Toolchain -> Toolchain: Custom toolchain(手动设置交叉编译工具链路径) System configuration -> /dev management: dynamic using devtmpfs + mdev
完成后保存并退出。
- 设置交叉编译工具链
首先创建一个新的文件夹,在其中存放交叉编译工具链:
mkdir -p ~/x-tools/arm-cortexa9-linux-gnueabihf/
cd ~/x-tools/arm-cortexa9-linux-gnueabihf/
wget https://linaro.org/downloads/#toolchain -O gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf.tar.xz
tar -xvf gcc-linaro-7.4.1-2019.02-x86_64_arm-linux-gnueabihf.tar.xz --strip-components=1
- 编译 Buildroot
执行以下命令进行编译:
make
- 运行 ARM 系统
运行 QEMU,并指定系统镜像文件和处理器类型:
qemu-system-arm -M versatilepb -m 256M -kernel output/images/zImage -dtb output/images/versatile-pb.dtb -drive file=output/images/rootfs.ext2,if=scsi,format=raw -append "root=/dev/sda console=ttyAMA0"
至此,buildroot qemu arm 环境搭建完成。