Ubuntu环境下使用qemu搭建arm64运行环境

Ubuntu环境下使⽤qemu搭建arm64运⾏环境⼀、安装qemu
sudo apt install qemu
安装成功后qemu- 提⽰
image.png
⼆、安装跨平台编译
sudo apt install gcc-aarch64-linux-gnu
安装后查看下版本
aarch64-linux-gnu-gcc -v
image.png
三、下载并编译linux kernel
3.1、编译开始
export ARCH=arm64
export CROSS_COMPILE=aarch64-linux-gnu-
(注:指定编译器)
make
make install
大胆人本艺术
3.2、创建共享⽬录
$ mkdir kmodules
四、 编译root⽂件系统
4.1、指定⼯具链未来世界的动物
export ARCH=arm64
export CROSS_COMPILE=aarch64-linux-gnu-
4.2、配置
make menuconfig
注:此时应该全屏,然后进⼊配置页⾯, 设置成静态编译
Settings --->
奥运会知识[*] Build static binary (no shared libs)
4.3、编译安装
make
make install
4.4、完善其他⽬录结构 上⾯我们编译安装完成之后会在b us yb ox源码⽬录的_ins tall⽬录下⽣成必要的⼀些⽂件:
$ ls
中国公共卫生管理bin linuxrc sbin usr
可以看到都是⼀些命令相关的⽂件已经作为init进程的linuxrc,缺少其他的⼀些配置⽂件等⽬录,所以需要进⼀步完善。
我们来创建其他需要的⽬录:
mkdir dev etc lib sys proc tmp var home root mnt
我们主要需要更新etc、dev和lib⽬录:
4.4.1. 对于etc⽬录的更新:
添加profile⽂件:
#!/bin/sh
export HOSTNAME=liebao
export USER=root
export HOME=/home成人文学论坛
aarch64-linux-gnu-strip *
⾄此,我们的最⼩的根⽂件系统已经全部制作完成!
4.5、制作磁盘⽂件
cd busybox
dd if=/dev/zero of=rootfs_ext4.img bs=1M count=256
<4 rootfs_ext4.img
mkdir -p tmpfs
mount -t ext4 rootfs_ext4.img tmpfs/ -o loop
cp -af _install/* tmpfs/
umount tmpfs凸轮泵
rm -rf tmpfs
chmod 777 rootfs_ext4.img
5.开始启动
cd linux
qemu启动命令
qemu-system-aarch64 -machine virt -cpu cortex-a57 -machine type=virt -m 512 -smp 1 -nographic -kernel arch/arm64/boot/Image
-drive format=raw,file=../busybox/rootfs_ext4.img
-append "noinitrd root=/dev/vda rw console=ttyAMA0 loglevel=8"
-fsdev local,id=kmod_dev,path=$PWD/kmodules,security_model=none
-device virtio-9p-device,fsdev=kmod_dev,mount_tag=kmod_mount
启动后页⾯
image.png
(命令参数介绍)Linker option :
-cpu 指定处理器的架构
-smp 指定处理器的个数
-m 指定内存的⼤⼩
-nographic 不启动图形界⾯
-kernel 指定编译⽣成的内核镜像的存放位置
-append 是内核启动的附加
-drive 指定之前制作⽣成的根⽂件系统的镜像位置
6. 共享⽂件夹的使⽤
前⾯已经⽀持了主机和 qemu 上的系统共享⽬录,这个⽬录就是kmodules⽬录:通过mount可以查看被挂载到了qemu上的系统的/mnt⽬录下
在主机的内核源码⽬录的kmodules⽬录中echo⼀个⽂件:
cd linux/kmodules
$ echo "Hello QEMU" >
然后进⼊到我们启动qemu的内核根⽂件系统的/mnt⽬录:
[root@liebao ]# cd /mnt/
[root@liebao mnt]# ls
[root@liebao mnt]# ls
<
[root@liebao mnt]#
[root@liebao mnt]#
Hello QEMU

本文发布于:2024-09-22 05:30:49,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/264794.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:编译   指定   安装   内核   系统   启动   命令
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议