前言:建议ubuntu镜像版本在22.04以下,亲测新版本会报错
本文默认读者ubuntu搭建完成,且可以联网
sudo apt update
开始配置环境前先更新软件包列表
sudo apt install -y binutils gcc git libpixman-l-dev python2 pkg-config zliblg-dev libglib2.0-dev make gcc-multilib
记得在这里下载一下待会配置实验环境要用到的工具
sudo apt upgrade -y gcc binutils
升级一下已安装的工具包
git clone https://gh.llkk.cc/https://github.com/mit-pdos/6.828-qemu.git/qemu
克隆针对6.828定制的QEMU(使用github加速网址https://gh.llkk.cc/)如果报错说没有git就用sudo apt install git
下载一下git
cd qemu
切换到qemu的目录下面
./configure --disable-kvm --disable-sdl --target-list="i386-softmmu x86_64-softmmu" --python=/usr/bin/python2
配置QEMU编译选项:--disable-werror
,不把警告当做错误(不然待会报一堆warning看着都吓人,报warning没问题就怕他报error);指定/usr/local为make install
后的二进制文件安装路径;--target-list="x86_64-softmmu"
:指定只编译生成x86架构64位CPU的硬件模拟器:使用python2(s6.828的环境好像要求必须是python2.x的版本,之前下载了python3.x的版本报错说版本过高)
sed -i '/#include/i#include <sys/sysmacros.h>' qga/commands-posix.c
在qga/commands-posix.c
文件的第一行插入#include <sys/sysmacros.h>,注意这里运行代码后不会有任何回显就直接进下一条命令输入了(比如下图我就直接执行make命令了)
make
编译QEMU,在当前目录下可以看到一个新的可执行文件qemu-system_x86-64
sudo make install
安装QEMU,此后QEMU可以从shell启动(这两条命令比较长,至少五分钟以上)
cd ../(返回上级目录)git clone https://pdos.csail.mit.edu/6.828/2018/jos.git lab(克隆实验代码合集(不显示进度,一般一两分钟内可以完成))cd lab(进入实验室目录)make
make qemu-nox(编译)
所有命令运行完以后结果和最后一张图一样就说明环境已经搭建完成