MIT6.828——tools篇

Published: by Creative Commons Licence

1.环境

虚拟机:VMware Workstation Pro

系统:unbuntu20

2.工具链

先在你的unbuntu系统输入

$ objdump -i

第二行应该出现 elf32-i386之类的,然后输入

$ gcc -m32 -print-libgcc-file-name

然后会跳出下面两句中的一句

$ /usr/lib/gcc/i486-linux-gnu/version/libgcc.a
$ /usr/lib/gcc/x86_64-linux-gnu/version/32/libgcc.a

如果上面都正常,就不需要重新编译工具链;如果不正常,输入下面的代码。

$ sudo apt-get install -y build-essential gdb

3.qemu安装

然后创个文件夹用来拉qemu

git clone git://github.com/mit-pdos/6.828-qemu.git qemu

设置config

$ ./configure --disable-kvm --disable-werror --target-list="i386-softmmu x86_64-softmmu" --python=python2.7

然后如果报错了,可能是因为你的python版本不对或者没装python

$ sudo apt install python

若报此错

ERROR: pkg-config binary 'pkg-config' not found

则执行

apt-get install -y pkg-config

若报此错

ERROR: zlib check failed. Make sure to have the zlib libs and headers installed.

则执行

sudo apt-get install zlib1g-dev

若报此错

ERROR: glib-2.12 gthread-2.0 is required to compile QEMU

则执行

sudo apt-get install libglib2.0-dev

若报此错

ERROR: pixman >= 0.21.8 not present.

则执行

sudo apt-get install libpixman-1-dev

然后进去qemu文件夹, 先把Makefile文件中最后添加一行

QEMU_CFLAGS+=-w

然后shell里执行

make && sudo make install

如果又报了一堆werror,比如timeVal、minor、major…之类的就打开config-host.mak文件并把里面的-Werror去掉

4.友链

https://pdos.csail.mit.edu/6.828/2018/tools.html


本站总访客数人次