Linux子系统下Ubuntu安装bochs虚拟机

一、前期准备

一开始要安装一些库,以及依赖包

  sudo yum install gtk2 gtk2-devel
  sudo yum install libXt libXt-devel
  sudo yum install libXpm libXpm-devel
  wget https://www.nasm.us/pub/nasm/releasebuilds/2.14rc16/nasm-2.14rc16.tar.gz
  tar -zxvf  nasm-2.14rc16.tar.gz
  
./configure
make
sudo make install
nasm -v

其中,在安装nasm的时候,make install的时候需要使用sudo,否则会报权限不够的错误。

接下来安装bochs。

wget https://nchc.dl.sourceforge.net/project/bochs/bochs/2.6.9/bochs-2.6.9.tar.gz
tar -zxvf  bochs-2.6.9.tar.gz
cd bochs-2.6.9
./configure --with-x11 --with-wx --enable-debugger --enable-disasm --enable-all-optimizations --enable-readline --enable-long-phy-address --enable-ltdl-install --enable-idle-hack --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-v
 
# make
 



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
 
make
make install

在这其中,几个复制操作是为了解决如下错误的
在这里插入图片描述
在安装过程中,若在安装某个包的时候,显示当前有些包无法下载,需要其他依赖包的时候,使用如下代码解决问题

sudo aptitude install xxx

我就是在安装其中一个xorg-dev包的时候查到了这种方法,其中遇到Keep the following packages at their current version:
选n 就解决了无法安装xorg-dev的问题,之后一直y。 然后就解决了X windows的问题,也解决了无法configure的问题,这个其实是一个图形界面的包。

复制了了bochs-2.6.9中隐藏的.bashsrc并命名为bashsrc。
并对其进行编辑

 vim bashsrc

配置文件参考这个链接

https://blog.csdn.net/qq_34805255/article/details/86371713?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

但是这个链接中没有提到,需要更改romimage和vgaromimage,更改规则如下,需要自己先查看了在usr/local下是否有这样的安装目录。再进行修改,不修改的话无法利用配置文件进行启动。

# romimage: file=$BXSHARE/BIOS-bochs-latest, options=fastboot改为如下,其中$BXSHARE改为你的解压目录下+bios
romimage: file=/usr/local/bochs-2.6.9/bios/BIOS-bochs-latest, options=fastboot
# 同上
vgaromimage: file=/usr/local/bochs-2.6.9/bios/VGABIOS-lgpl-latest

接下来我们需要制作一个软盘,参考这篇博客

https://www.linuxidc.com/Linux/2016-10/135905.htm

制作好软盘后,我就退出了boch-2.6.9,在当前目录下进行ls。发现了一个bochs的文件夹。于是我就在这里进行了命令行启动bichs的操作(错误示范,等会详细说)。

启动以后发现bochs报错,说无法连接到X window。我寻思我不是安装了xorg-dev了嘛?后来查阅资料才发现,原来虚拟机需要运行在图形界面上,单纯子系统的命令行是无法正常使用的。于是下载了xming作为用户图形界面。

运行之后,在子系统命令行输入

DISPLAY=:0 startxfce4

启动xming。

这时候终于不报无法连接到xwindows的错误了,但是这个时候,当我们使用

bochs -f ./bochsrc

的时候,提示错误找不到配置文件,读取配置文件失败,换成相对路径也不行。我想了很久,最后终于发现需要在bash-2.6.9目录下执行这个命令才可以正常读取配置文件,至此,boch虚拟机安装全部结束。耗时一天左右,才安装好,有些坑需要自己慢慢找解决方法。

你可能感兴趣的:(Linux子系统下Ubuntu安装bochs虚拟机)