Ubuntu 14.04 LTS 安装和配置Bochs

     

系统是:Ubuntu 14.04 LTS 64位

安装的是:bochs-2.6.8

Bochs 需要在 X11 环境下运行,因此你的 Linux 系统必须已经安装了X Window 系统才能使用Bochs。

因为 Bochs 是用C++写的,所以这里要安装GNU gcc/g++编译器。
安装命令如下:

sudo apt-get install build-essential
sudo apt-get install xorg-dev
sudo apt-get install bison
sudo apt-get install g++

具体安装步骤:

1.先去https://sourceforge.net/projects/bochs/files/
下载 bochs-2.6.8.tar.gz

2.解压下载的源代码:

sudo tar zxvf bochs-2.6.8.tar.gz

3.进入bochs-2.6.8目录,运行configure脚本,它会测试你的机器,C/C++编译器以及一些库,用来判断何种配置适合于你的机器。运行:

sudo ./configure --enable-debugger --enable-disasm

(这两个是用来开启调试和反汇编功能)

4.第3步正确运行后,会产生一个Makefile文件,然后:

sudo make 

5.安装:

sudo make install 

至此,bochs安装已经结束。


编译安装过程中可能遇到的错误:

错误1:

checking for default gui on this platform… x11

ERROR: X windows gui was selected, but X windows libraries were not
found.

解决办法1:

sudo apt-get install xorg-dev  

错误2:

ERROR: pkg-config was not found, or unable to access the gtk+-2.0
package.

解决办法2:

sudo apt-get install libgtk2.0-dev  

错误3:

symbols: DSO missing from command line collect2: error: ld returned 1 exit status

解决方法3:

在Makefile的LIBS中添加如下内容 :

-lz -lrt -lm -lpthread 

成功安装完成后能在命令行终端中输入 bochs 看到 bochs :


接下来进行配置 :

先制作软盘吧

编译以后的 bochs2.6.8 文件夹下会有一个 bximage 可执行文件,在终端运行:

按步骤先做一个软盘:

然后写入一个系统镜像,镜像文件可以去下载

http://www.oldlinux.org/Linux.old/images/bootroot-0.11

这个是linux0.11的镜像文件

然后在终端执行命令把镜像写入我们制作的软盘:

dd if=/home/jack/Downloads/bootroot-0.11 of=a.img 

if 是下载的镜像所在的位置 ,of 是你软盘所在的路径。

接下来是处理配置文件:
通过 ls - a 能看到原始的 .bochsrc 来参考,不过是全英文的(^_^!!一点都不友善)。

要能在 Bochs 中运行一个操作系统,至少需要以下一些资源或信息:

  • Bochs执行文件
  • BIOS映像文件(通常称为BIOS-bochs-latest)
  • VGA BIOS映像文件(例如VGABIOS-lgpl-latest)
  • 至少一个引导启动磁盘映像文件(软盘,硬盘或CDROM的映像文件)
    我的配置如下:

在命令行终端输入:

./bochs -f ~/Desktop/config4ji

记得自己改文件位置,不要复制粘帖。

然后会出现

按完6回车 会出现

虽然是黑屏,当你在命令行终端输入c回车后,世界还是很美好的。

Ubuntu 14.04 LTS 安装和配置Bochs的更多相关文章

  1. ubuntu 14.04 lts安装教程:u盘安装ubuntu 14.04 lts步骤

    绿茶小编带来了ubuntu 14.04 lts安装教程,下文详细讲解了u盘安装ubuntu 14.04 lts的步骤,很简单,只需要一个工具就能够轻松使用u盘安装ubuntukylin 14.04系统 ...

  2. Ubuntu 14.04 LTS 安装Docker

    Docker官方是有很详细的安装文档(https://docs.docker.com/engine/installation/ubuntulinux/),这里做了一个Ubuntu 14.04 LTS中 ...

  3. Ubuntu 14.04 LTS 安装 Juno 版 OpenStack Keystone

    本文介绍如何在Ubuntu 14.04 LTS 上安装Juno版的Keystone, 我们采用的是手动安装的方式, 同时仅针对OpenStack的身份与访问管理系统Keystone. 事实上OpenS ...

  4. Ubuntu 14.04 LTS 安装Docker(转)

    转自:https://www.cnblogs.com/leolztang/p/5097278.html Docker官方是有很详细的安装文档(https://docs.docker.com/engin ...

  5. Ubuntu 14.04 LTS 安装 spark 1.6.0 (伪分布式)-26号开始

    需要下载的软件: 1.hadoop-2.6.4.tar.gz 下载网址:http://hadoop.apache.org/releases.html 2.scala-2.11.7.tgz 下载网址:h ...

  6. ubuntu 14.04 lamp 安装与配置

    一.安装apache 1.打开终端:Ctrl+Alt+T sudo apt-get update 2.通过apt-get方式安装Apache: sudo apt-get install apache2 ...

  7. ubuntu - 14.04,安装、配置GO语言开发工具Eclipse!!

    在配置Eclipse之前,我们必须保证下面这些都已经安装,并且正常工作了: 一,Go语言:参考文章 http://blog.csdn.net/sunylat/article/details/49859 ...

  8. ubuntu 14.04 LTS 安装ss客户端

    附: 配置pac模式 ss客户端 ss客户端 前提环境 python (用最新的就行) pip (注:python工具) build-essential 以上可以通过一条命令解决: sudo apt- ...

  9. Ubuntu 14.04 LTS 安装 VNC Viewer

    1.修改镜像源: /etc/apt/sources.list将"http://archive.ubuntu.com/ubuntu/"替换为: http://cn.archive.u ...

随机推荐

  1. Android 第三方库导致jar包冲突解决办法

    这几天的任务是将mapbox的工程合到程序中去,但是合并过程却出现了问题 合并方法: 在app的build.gradle中添加 dependencies { compile ('com.mapbox. ...

  2. Android 使用NestedScrollView+ViewPager+RecyclerView+SmartRefreshLayout打造酷炫下拉视差效果并解决各种滑动冲突

    如果你还在为处理滑动冲突而发愁,那么你需要静下心来看看这边文章,如果你能彻底理解这篇文章中使用的技术,那么,一切滑动冲突的问题解决起来就轻而易举了: 先扔一个最终实现的效果图 先分析下效果图中实现的功 ...

  3. POJ 1651 Multiplication Puzzle (区间DP,经典)

    题意: 给出一个序列,共n个正整数,要求将区间[2,n-1]全部删去,只剩下a[1]和a[n],也就是一共需要删除n-2个数字,但是每次只能删除一个数字,且会获得该数字与其旁边两个数字的积的分数,问最 ...

  4. Spoj REPEATS 后缀自动机+set

    REPEATS - Repeats 链接:http://www.spoj.com/problems/REPEATS 题意:求S串中某个子串连续循环次数最多的次数. 想法: 从暴力开始,枚举所有串,求出 ...

  5. GPnP profile内容

    <?xml version="1.0" encoding="UTF-8"?>  <gpnp:GPnP-Profile Version=&quo ...

  6. UVA208 Firetruck 消防车(并查集,dfs)

    要输出所有路径,又要字典序,dfs最适合了,用并查集判断1和目的地是否连通即可 #include<bits/stdc++.h> using namespace std; ; int p[m ...

  7. Hive相关集锦

    Hive介绍 http://www.cnblogs.com/sharpxiajun/archive/2013/06/02/3114180.htmlHive的数据类型和数据模型 http://www.c ...

  8. python_103_属性方法例子

    class Flight(object): def __init__(self,name): self.flight_name = name def checking_status(self): pr ...

  9. Python列表解析与生成器表达式

    Python列表解析 l = ["egg%s" %i for i in range(100) if i > 50] print(l) l= [1,2,3,4] s = 'he ...

  10. mtDNA|ctDNA|cpDNA|

    5.9细胞器基因组是编码细胞器蛋白质的环状DNA分子 细胞器中除真核细胞线粒体DNA(mtDNA)是线性的外,都是环状分子,比如叶绿体DNA(ctDNA,cpDNA).因为单个细胞器有几套不同拷贝的细 ...