macOS High Sierra 10.13.2 上安装 Bochs

macOS High Sierra 10.13.2 上安装 Bochs

简而言之 Bochs 是一个 IA-32 (x86) PC 模拟器。更多信息参考官网介绍。这里记录下安装过程以及其中遇到的问题。

Homebrew 安装

参考 https://github.com/Shirk/homebrew-bochs。

源码安装

2.6.8 下载后解压。

sdl

需要安装依赖 sdl。
brew install sdl

configure

在源码根目录下执行

1
2
3
4
5
6
7
8
9
10
11
12
13
14
./configure --enable-ne2000 \
--enable-all-optimizations \
--enable-cpu-level=6 \
--enable-x86-64 \
--enable-vmx=2 \
--enable-pci \
--enable-usb \
--enable-usb-ohci \
--enable-e1000 \
--enable-debugger \
--enable-disasm \
--disable-debugger-gui \
--with-sdl \
--prefix=/opt/bochs

make

make 会得到如下错误提示:

1
2
cdrom_osx.cc:194:18: error: assigning to 'char *' from incompatible type 'const char *'
if ((devname = strrchr(devpath, '/')) != NULL) {

幸好有 patch

修改后,执行 make。

make install

sudo make install

环境变量

1
2
export BXSHARE="/opt/bochs/share/bochs"
export PATH="$PATH:/opt/bochs/bin"

参考

https://blog.nswebfrog.com/2017/02/03/config-bochs/