Bochs(发音:box)是一个以GNU宽通用公共许可证发放的开放源代码的x86、x86-64IBM PC兼容机模拟器和调试工具。它支持处理器(包括保护模式),内存,硬盘,显示器,以太网,BIOS,IBM PC兼容机的常见硬件外设的仿真。(来自WIKI百科)
如果不想有调试功能,终端下直接命令行式安装
Debian/Ubuntu环境:
$ sudo apt-get install bochs
然后它会自动安装依赖的包如下:
The following NEW packages will be installed:
bochs bochs-wx bochsbios bximage vgabios
也可以显式的把依赖的包列在install命令行里
$ sudo apt-get install bochs bochs-wx bochsbios bximage vgabios
Centos/Fedora环境:
到这里下载XXX.rpm,然后终端
$ rpm -i XXX.rpm
如果自定义安装,就需要从bochs官网下载源码包到自己目录,比如bochs-2.6.5.tar.gz
解压
$ tar -xvzf bochs-2.5.6.tar.gz
进入目录
$ cd bochs-2.5.6
打开Makefile,编辑器根据自己的偏爱,这里使用vim
$ vim Makefile
在Makefile查找LIBS如下:
LIBS = -lgtk-x11-2.0 -lgdk-x11-2.0 -latk-1.0 -lgio-2.0 -lpangoft2-1.0 -lpangocairo-1.0 -lgdk_pixbuf-2.0 -lcairo -lpango-1.0 -lfreetype -lfontconfig -lgobj ect-2.0 -lglib-2.0
这就是编译需要依赖的库,如果机器上不存在,用户需要自行安装,否则编译不过
(1)如果没有g++,安装
For Debian and Debian derivatives including Ubuntu:
$ sudo apt-get install g++
For Centos/Fedora:
$ sudo yum install g++
(2)gtk相关库
For Debian and Debian derivatives including Ubuntu:
$ sudo apt-get install libgtk2.0-dev
For Centos/Fedora:
$ sudo yum install gtk2.0-devel
(3)cairo库
For Debian and Debian derivatives including Ubuntu:
$ sudo apt-get install libcairo2-dev
For Centos/Fedora:
$ sudo yum install cairo-devel
(4)glib2.0一般跟随gcc/g++而安装的
(5)如何还有什么依赖的话,编译时会给出错误提示,自行安装即可
$ ./configure --enable-debugger --enable-disasm
如果不需要调试功能和反汇编功能,直接./configure即可
$ make
会发现编译之后有一个错误
/usr/bin/ld: gui/libgui.a(gtk_enh_dbg_osdep.o): undefined
reference to symbol pthread_create@@GLIBC_2.1 //
lib/i386-linux-gnu/libpthread.so.0: error adding symbols: DSO missing
from command line collect2: error: ld r
在Makefile的LIBS后追加 -lm 和-lpthread
LIBS = ... -lm -lpthread
然后再make
$ sudo make install
搞定,走到这里,给你自己点个赞^_^!
原文地址:http://blog.csdn.net/cwcmcw/article/details/44775809