MIT6.S081-2024版本的环境搭建

MIT6.S081-环境搭建

1. 环境搭建

我看网上的环境搭建版本大多是2020年,或者ubuntu20版本的,我也跟着很久没有搭建好,在下载工具链之前,我最开始直接用git去拉取哪个工具链,之后又配置了半天,发现一个比较友好的最新版本的环境搭建办法,在这里重新分享一下

我的环境:

  • Ubuntu 24.04.1 LTS
  • qemu 8.2.2
  • xv6-2024

下载工具链

bash 复制代码
sudo apt install git build-essential gdb-multiarch qemu-system-misc gcc-riscv64-linux-gnu binutils-riscv64-linux-gnu libglib2.0-dev libpixman-1-dev gcc-riscv64-unknown-elf

下载qemu

bash 复制代码
wget https://download.qemu.org/qemu-8.2.2.tar.xz
tar -xf qemu-8.2.2.tar.xz
cd qemu-8.2.2
./configure --disable-kvm --disable-werror --prefix=/usr/local --target-list="riscv64-softmmu"
make
sudo make install
cd ..

拉取xv6源码

bash 复制代码
git clone git://g.csail.mit.edu/xv6-labs-2024
cd xv6-labs-2024
git checkout util
//util是lab1实验分支

然后:

bash 复制代码
make
make qemu

此时如果出现

bash 复制代码
xv6 kernel is booting

hart 1 starting
hart 2 starting
init: starting sh
$

则说明成功了。

那么还需要进一步验证

检查工具链:

bash 复制代码
riscv64-unknown-elf-gcc --version

检查调试工具(xv6源码目录下):

一个终端输入:

bash 复制代码
make qemu-gdb
sed "s/:1234/:26000/" < .gdbinit.tmpl-riscv > .gdbinit
*** Now run 'gdb' in another window.
qemu-system-riscv64 -machine virt -bios none -kernel kernel/kernel -m 128M -smp 3 -nographic -drive file=fs.img,if=none,format=raw,id=x0 -device virtio-blk-device,drive=x0,bus=virtio-mmio-bus.0 -S -gdb tcp::26000

另一个终端:

bash 复制代码
gdb-multiarch -q kernel/kernel

此时如果进入了gdb,这便是没有问题了!

有问题欢迎随时提

相关推荐
摇滚侠2 小时前
《SpringBoot 3:入门与应用实战》第 12 章 JDBC 与事务 JDBC 事务管理 阅读笔记 33
spring boot·笔记·后端
Wendy不吃榴莲2 小时前
# AI短剧教程 - 《后西游记》开播后,AI影视为什么更考验“连续讲故事”?
人工智能·笔记·学习·ai·视频
Agudamu11612 小时前
B站学习视频怎么变笔记:用 Ai好记 + Obsidian 搭建个人知识库的完整教程
人工智能·笔记·学习·音视频
疯狂打码的少年4 小时前
【数据库技术】SQL嵌套查询(IN/EXISTS/ANY/ALL)
数据库·笔记·sql
凯尔萨厮5 小时前
Java学习笔记十四(网络通信)
笔记·学习
AAA代码批发商5 小时前
DAYS 38 TCP并发服务器模型详解
linux·网络·笔记·学习
启观川6 小时前
Python基础-第 16 章 综合案例:客户信息管理系统
开发语言·笔记·python·正则表达式
WK100%6 小时前
LeetCode双题:滑动窗口破解最小子数组
c++·经验分享·笔记·算法
sheeta19986 小时前
LeetCode 每日一题笔记 日期:2026.09.02 题目:3875.构造奇偶一致的数组 I
笔记·算法·leetcode
风123456789~6 小时前
【架构专栏】4.7 信息安全的抗攻击技术 3/4
笔记·系统架构设计