win10+ubuntu20.04双系统搭建QEMU下xv6-riscv环境

回顾总结为时两天的安装之路

从准备回校开始,发现自己在家用的主机也搬不到学校,但是VMware安装虚拟机失败次数过多心理阴影极重,转而投奔双系统的怀抱…想要记录一下走过的弯路。

1.设置分区安装双系统

参考教程,设置好了分区(下面这个图是成功安装之后的样子,正常来讲图中箭头对应的磁盘位置应该是<未分配>字样):

成功分区
我笔记本进入boot menu是需要用牙签戳一下笔记本侧面电源指示灯旁的小按钮,选择U盘启动那个选项,然后选择ubuntu。

在这里插入图片描述

但是ubuntu安装过程里有“与现存系统并存”的选项,我就选择了该选项,然后意识到我不知道把ubuntu装到了哪里…

问题就来了,我发现我设置的分区未分配也没有被使用,它空着了,于是乎,我就把分区又加到win10分区里,再次开机,直接进入gnu grub界面,需要命令行引导开机,原因大概是因为我又改变了硬盘分区,ubuntu找不到引导分区了,但是win10没有问题,根据视频(步骤如下)进入了win10。

grub> ls
(proc) (hd0) (hd0,gpt3) ....
grub> ls (hd0,gpt1)/efi/microsoft/boot/bootmgfw.efi
bootmgfw.efi
grub> set root=(hd0,gpt1)
grub> chainloader /efi/microsoft/boot/bootmgfw.efi
grub> boot
就可以愉快地进入win10开机画面了

通过度娘的<删除双系统中ubuntu>以及<开机进入grub引导>教程中各种操作把ubuntu系统删掉,删掉bios引导项,开机恢复了没装ubuntu之前win10开机画面,重新设置好了分区,开始自定义安装(系统分区+交换分区+主分区),按照上面的教程这一步没有遇到什么问题。安装成功开机会进入到这个界面:
在这里插入图片描述

在Ubuntu里设置开机默认系统(我试了win10里设置开机默认系统,开机直接进到win10),步骤如下:

> cd etc/default
> sudo gedit grub
修改GRUB_DEFAULT=0修改为GRUB_DEFAULT=2
(就是上图中windows系统的序号,0号为Ubuntu)
> sudo update-grub
重启系统

2.安装riscv-toolchain

整体搭建环境过程可以参考教程

> sudo apt-get install autoconf automake autotools-dev curl libmpc-dev libmpfr-dev libgmp-dev gawk build-essential bison flex texinfo gperf libtool patchutils bc zlib1g-dev
> git clone --recursive https://github.com/riscv/riscv-gnu-toolchain
> cd riscv-gnu-toolchain
> ./configure (这一步必须在有configure文件下执行,所以要进入文件夹)
> make

3.安装qemu

> sudo apt-get install gcc libc6-dev pkg-config bridge-utils uml-utilities zlib1g-dev libglib2.0-dev autoconf automake libtool libpixman-1-dev ibglib2.0-dev
> wget https://download.qemu.org/qemu-5.2.0.tar.xz
> tar xvJf qemu-5.2.0.tar.xz
> cd qemu-5.2.0
> ./configure                       
> make   

需要单独安装ninja,不然会报错:

 > git clone git://github.com/ninja-build/ninja.git && cd ninja
 > ./configure.py --bootstrap
 > cp ninja /usr/bin/

4.安装xv6-riscv

> git clone git://github.com/mit-pdos/xv6-riscv-fall19.git
> make qemu

顺利的话直接进入shell(make不可以在root下执行,会报错),可以输入ls这种指令简单验证一下。

5.测试+验证

为了简化命令的话可以设置环境变量,但是我使用的指令是暂时的,每次进入终端都得用这条指令。。。qemu默认安装到/usr/local/bin下,riscv安装时规定了路径/opt/riscv,所以要将/opt/riscv/bin加入环境变量:

> export PATH=/opt/riscv/bin:$PATH

不放心可以使用下列两个指令查看是否安装成功:

> qemu-system-riscv64 --version
> riscv64-unknown-elf-gcc --version

编译

> riscv64-unknown-elf-gcc hello.c -o hello

编译完成就可以在文件夹里找到hello文件。

这里,我看到有的教程是 riscv64-unknown-linux-gnu-gcc hello.c -o hello,可以到安装时设置的目录下bin文件夹里看一下,确认一下到底是哪个。

运行

 > qemu-riscv64 -L $RISCV/sysroot hello

qemu-riscv64也可以在安装路径下bin文件夹中找到。

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是双系统安装WIN10和Ubuntu 20.04的步骤: 1. 准备工作: - 确保你有一台支持UEFI和GPT分区的计算机。 - 下载最新版本的Windows 10和Ubuntu 20.04的ISO镜像文件。 - 准备一个空的USB闪存驱动器,容量至少为8GB。 2. 创建Windows 10安装媒体: - 使用Windows 10的ISO镜像文件创建一个启动盘。你可以使用Windows USB/DVD下载工具或Rufus等工具来完成这个步骤。 3. 安装Windows 10: - 将USB闪存驱动器插入计算机,并重启计算机。 - 在启动时按下计算机制造商指定的键(通常是F2、F12、Esc或Delete键)进入BIOS设置。 - 在BIOS设置中,将启动顺序更改为从USB驱动器启动。 - 保存设置并退出BIOS设置。 - 计算机将从USB驱动器启动,并进入Windows 10安装界面。 - 按照安装向导的指示完成Windows 10的安装。 4. 创建Ubuntu 20.04安装媒体: - 使用Ubuntu 20.04的ISO镜像文件创建一个启动盘。你可以使用Rufus或UNetbootin等工具来完成这个步骤。 5. 安装Ubuntu 20.04: - 将Ubuntu 20.04的启动盘插入计算机,并重启计算机。 - 在启动时按下计算机制造商指定的键(通常是F2、F12、Esc或Delete键)进入BIOS设置。 - 在BIOS设置中,将启动顺序更改为从USB驱动器启动。 - 保存设置并退出BIOS设置。 - 计算机将从USB驱动器启动,并进入Ubuntu 20.04的安装界面。 - 按照安装向导的指示完成Ubuntu 20.04的安装。 6. 配置双系统启动: - 完成Ubuntu 20.04的安装后,重启计算机。 - 在启动时按下计算机制造商指定的键(通常是F2、F12、Esc或Delete键)进入BIOS设置。 - 在BIOS设置中,将启动顺序更改为从硬盘启动。 - 保存设置并退出BIOS设置。 - 计算机将重新启动,并进入双系统启动菜单。 - 选择Windows 10或Ubuntu 20.04来启动相应的操作系统

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值