mac mojave安装bochs 2.6.9问题解决

为什么特定版本?

因为不同操作系统和不同软件版本的库和代码都有差异,你在这个系统上编译通过,换个不同系统(mac,redhat,centOS,Fedora等)或同一系统的不同版本都有可能因为库的差异编译不了,或者你换个bochs版本因为源码不同也一样可能编译不过去。

所以以下解决的问题有方法在其它条件下是否有用那就不一定了。

首先我试过用brew安装,但是keymap配置不起来。之前说的注释掉什么的都没有用,注释掉虚拟机就起不来,一个白屏界面,修改多次也没有用,所以打算编译安装试一下。

安装SDL2,我是直接用brew安装的。

然后手工补丁:

1.去修改cdrom_osx.cpp(低版本的叫cdrom_osx.cc),go 到194行,在strrchr(devpath, '/')前加 (char *),就是和else里一样。

2.复制 文件

        cp misc/bximage.cpp misc/bximage.cc
        cp iodev/hdimage/hdimage.cpp iodev/hdimage/hdimage.cc
        cp iodev/hdimage/vmware3.cpp iodev/hdimage/vmware3.cc
        cp iodev/hdimage/vmware4.cpp iodev/hdimage/vmware4.cc
        cp iodev/hdimage/vpc-img.cpp iodev/hdimage/vpc-img.cc
        cp iodev/hdimage/vbox.cpp iodev/hdimage/vbox.cc

3.使用下面的选项,没有科学性,就是去掉没法编译的选项保证能编译过去。

./configure --with-sdl2 --enable-debugger --enable-disasm --enable-all-optimizations --enable-readline --enable-long-phy-address --enable-ltdl-install  --enable-plugins --enable-a20-pin --enable-x86-64 --enable-smp --enable-cpu-level=6 --enable-large-ramfile --enable-repeat-speedups --enable-fast-function-calls  --enable-handlers-chaining  --enable-trace-linking --enable-configurable-msrs --enable-show-ips --enable-cpp --enable-debugger-gui --enable-iodebug --enable-logging --enable-assert-checks --enable-fpu --enable-vmx=2 --enable-svm --enable-3dnow --enable-alignment-check  --enable-monitor-mwait --enable-avx  --enable-evex --enable-x86-debugger --enable-pci --enable-usb --enable-voodoo --prefix=/opt/bochs

4.make

5.sudo make install

这样基本能跑起来了。

配置文件:

megs:32
romimage:file=/opt/bochs//share/bochs/BIOS-bochs-latest
vgaromimage:file=/opt/bochs/share/bochs/VGABIOS-lgpl-latest
floppya:1_44=boot.img,status=inserted
boot:floppy
log:bochsout.txt
mouse:enabled=0
keyboard:keymap=/opt/bochs/share/bochs/keymaps/sdl-pc-us.map

已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页