centos7 qemu搭建arm环境

参考https://www.cnblogs.com/xidongyu/p/11638627.html

  1. 该文章下载运行讲的比较全,不多做叙述,这里补充说明一点,在最后的qemu运行命令上面,需要指定Image和rootfs.cpio.gz的路径,否则qemu-system-aarch64: could not load kernel 'Image'

2、存在qemu运行了,但是拉不起操作系统,这个是因为编译出来的linuxrc文件有误,系统不认识,以我这里的为例,我搭建的是arm的系统,但是linuxrc是x86的

centos7 qemu搭建arm环境_第1张图片

由于linuxrc -> bin/busybox,所以查看file  bin/busybox,确实是x86的

但是我启动的qemu是arm版本

解决:重新编译arm版本的

首先确认自己安装了arm编译器,我这里是

    aarch64-linux-gnu-gcc -v

  1. echo $PATH
  2. /usr/local/arm/4.4.3/bin:/usr/local/aarch64-linux-gnu/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin
  3. Vi Makefile添加CROSS_COMPILE ?=/usr/local/aarch64-linux-gnu/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu-
  4. make再 make install
  5. file  bin/busybox查看文件类型

最后运行,我在_install下运行的,只指定了Image的路径

qemu-system-aarch64 -cpu cortex-a57 -machine type=virt -nographic -smp 1 -m 512 -kernel /home/package/linux-4.9.157/arch/arm64/boot/Image -append "rdinit=/linuxrc console=ttyAMA0" -initrd rootfs.cpio.gz -device virtio-scsi-device

centos7 qemu搭建arm环境_第2张图片

 

你可能感兴趣的:(配置环境,qemu,linux)