众所周知Apt-get安装的bochs是不带调试功能的,必须通过源码编译加上--enable-debugger才行。
现在Ubuntu源上的bochs版本是2.4.6,但是bochs网站已经发布了2.5.1,因此我们直接编译安装bochs2.5.1。
编译源码 从 下载最新的源码并解压 ./configure --with-x11 --with-wx --enable-debugger --enable-disasm --enable-all-optimizations --enable-readline --enable-long-phy-address --enable-debugger-gui 如果是64位系统上编译bochs,一定要加上--enable-long-phy-address选项,否则运行中会出现bochs exception(): 3rd (13) exception with no resolution, shutdown status is make $cp bochs bochsdbg,编译没有产生bochsdbg,所以这里手动拷贝一份 sudo make install 编译bochs源码报错的处理 checking for C compiler default output file name… configure: error: C compiler cannot create executablessudo apt-get install build-essential libc6-dev ERROR: X windows gui was selected, but X windows libraries were not found.
sudo apt-get install xorg-dev libgtk2.0-dev install: cannot stat `./bios/VGABIOS*':
在源码的bios目录下(/xxxx/bochs-2.5.1/bios),建立符号链接ln -s /usr/share/vgabios/vgabios.bin VGABIOS-lgpl-latest undefined reference to 'XStringToKeysym'
configure时加上--with-x11,--with-x11 --with-wx --enable-debugger --enable-disasm --enable-all-optimizations --enable-readline --enable-long-phy-address --enable-debugger-gui 如果configure时,提示--with-wx有问题,sudo apt-get install libwxgtk2.8-dev libx11-xcb-dev 源码make install以后,再通过sudo apt-get install bochs安装普通bochs 普通安装的bochs在/usr/bin/bochs,而源码安装的在/usr/local/bin/bochs,/usr/local/bin在PATH中的优先级比/usr/bin高,因此每次执行bochs实际执行的是源码安装的那个,我们可以把/usr/local/bin/bochs重命名。
这样保证我们执行bochs时是普通安装的,执行bochsdbg是源码安装的。 源码安装使用中遇到的问题 (.:7444): Gtk-WARNING **: Unable to locate theme engine in module_path: "pixmap", sudo apt-get install gtk2-engines-pixbuf 解决 使用过程中死机(-_-!) config_interface和display_library注释掉 或者config_interface = textconfig,display_library=x, options="gui_debug" ,总之别用wx bochs2.5.1配置文件的样本是源码目录下的.bochsrc