~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
准备工作:
首先,安装以下软件:
sudo apt-get bulid-essional (如果以前安装过就免了)
sudo apt-get install xorg-dev
sudo apt-get install bison
安装bochs:
然后到bochs官方网站下载源码包 bochs-2.4.2.tar.gz
解压此文件:tar vxzf bochs-2.4.2.tar.gz
cd bochs-2.4.2
./configure --enable-debugger --enable-disasm
make
sudo make install
注意:在以上过程中可能会遇到错误,不必惊慌,到百度上去找答案吧
配置bochs:
安装好bochs之后,我们需要对bochs进行配置,其实就是对文件bochrsc进行修改!
《orange's :一个操作系统的实现》的附带光盘里有一个已经配置好的bochrsc,但
是它是针对bochs2.3版本的,所以不能用!!!我们需要重新修改bochrsc!
首先将附带光盘里的chapter1子目录下的文件夹a 移动到/home/roothoo/,(主要是为
是让a.img 和 bochsrc在同一文件夹下),然后对bochrc进行修改如下:
注意,#是注释符号!即#之后的语句是无效的,其实#就相当于C+语言中的//
###############################################################
# Configuration file for Bochs
###############################################################
# how much memory the emulated machine will have
megs: 32
# filename of ROM p_w_picpaths
#romp_w_picpath: file=/usr/local/share/bochs/BIOS-bochs-latest
romp_w_picpath: file=$BXSHARE/BIOS-bochs-latest
#vgaromp_w_picpath: /usr/local/share/vgabios/vgabios.bin
vgaromp_w_picpath: file=$BXSHARE/VGABIOS-lgpl-latest
# what disk p_w_picpaths will be used
floppya: 1_44=a.img, status=inserted
# choose the boot disk.
boot: floppy
# where do we send log messages?
# log: bochsout.txt
# disable the mouse
mouse: enabled=0
# enable key mapping, using US layout as default.
keyboard_mapping: enabled=1, map=/usr/local/share/bochs/keymaps/x11-pc-us.map
注意看字体为红色的那两句!
修改好之后,别忘了保存!
最后,我们运行bochs
cd /home/roothoo/a #我们切换到a.img 和 bochsrc所在的文件夹,
bochs -f bochsrc #以bochsrc为配置文件启动bochs
然后选择6,
然后再按c键,
OK!!!
ENJOY! -_-
如果单独安装gcc以及g 比较麻烦,幸运的是,为了能够编译Ubuntu的内核,Ubuntu提供了一个build-essential软件包,所以要.$sudo apt-get install build-essential
1.下载LINUX安装光盘的ISO镜像文件。我这里下载的是xubuntu-8.04.1-desktop-i386.iso,放在了/home目录下。可到如下地址下载XUBUNTU镜像文件(http://cdp_w_picpath.ubuntu.com/xubuntu/releases/)
2.把该ISO镜像文件挂载到光驱。光驱文件一般是/cdrom,切换到ISO文件所在目录,通过如下命令挂载:
sudo mount -o loop -t iso9660 xubuntu-8.04.1-desktop-i386.iso /cdrom
3.依次打开System--->Administration--->Softwar Source,在Software Source对话框中选择“Other software”选项卡,然后点击"Add CD-ROM"按钮,这样就把软件源设置为了光驱
4.在终端中输入以下命令:sudo apt-get update
sudo apt-get install build-essential,这样就可以把build-essential安装好了。
Ubuntu下GTK的安装
apt-get install build-essential #这将安装gcc/g++/gdb/make 等基本编程工具
apt-get install gnome-core-devel #这将安装 libgtk2.0-dev libglib2.0-dev 等开发相关的库文件
apt-get install pkg-config #用于在编译GTK程序时自动找出头文件及库文件位置
apt-get install devhelp #这将安装 devhelp GTK文档查看程序
apt-get install libglib2.0-doc libgtk2.0-doc #这将安装 gtk/glib 的API参考手册及其它帮助文档
apt-get install glade libglade2-dev #这将安装基于GTK的界面GTK是开发Gnome窗口的c/c++语言图形库。
apt-get install libgtk2.0*, gtk+2.0所需的所有文件统通下载安装完毕。
应用程序编译命令:gcc test.c `pkg-config --cflags --libs gtk+-2.0`,编译通过,运行正常。
pkg-config是一个用来管理包的程序,在控制台输入 pkg-config --cflags --libs gtk+-2.0,可以发现输出的文本包括了gcc编译gtk+2.0所需要的所有选项(头文件目录和库文件)。
这里有一点需要注意, gcc test.c `pkg-config --cflags --libs gtk+-2.0`, pkg-config --cflags --libs gtk+-2.0两侧的引号并不是真正的引号,而是键盘数字件那一行,最左边的那个字符。如果错用了单引号,gcc无法使用 pkg-config --cflags --libs gtk+-2.0产生的文本作为编译选项。构造程序。