ubuntu18.04 下bochs-2.6.7 安裝的總結(試驗成功後搬運)
阿新 • • 發佈:2018-12-30
先下載bochs,版本隨意⼀般最新版即可,我裝的是bochs-2.6.7,直接去官⽹的最下⾯找到下載區,點
擊⼀個版本之後會跳轉到更詳細的下載⻚⾯,我們是linux系統所以選擇bochs-2.6.7.tar.gz這種的壓縮格式。下載完成後開始解壓,在Ubuntu下按 Ctrl+Alt+T 鍵開啟命令⾏,也就是常說的終端模擬器。
終端模擬器剛開啟時預設的路徑為:home⽬錄
⼀般剛下載的⽂件都在home下的Downloads⽂件夾⾥
輸⼊:ls
可以看到home⽬錄⾥的所有⽂件夾和⽂件
輸⼊:cd Downloads/
進⼊Downloads⽂件夾下
輸⼊:ls
不出意外可以看⻅剛下載的bochs-2.6.7.tar.gz
輸⼊:tar -xf bochs-2.6.7.tar.gz
此時會在當前⽬錄下解壓出⼀個新的⽂件夾,如:bochs-2.6.7
輸⼊:cd bochs-2.6.7/
進⼊bochs-2.6.7⽬錄
現在開始安裝
輸⼊:./cofigure –enable-debugger –enable-disasm
注意:"./configure"之後的引數便是開啟除錯功能的開關
此時命令⾏開始為安裝編譯做好準備⼯作,會跳出很多英⽂,不⽤管,只要看最後那⼏⾏有沒有出現報錯
資訊
沒有報錯即可進⼊下⼀步安裝,出現以下報錯資訊時:
(1) 出現 1 “ERROR: X windows gui was selected, but X windows libraries were not found.
解決辦法:
輸⼊:sudo apt-get install libx11-dev xserver-xorg-dev xorg-dev
(2) 出現
1 “ERROR: pkg-config was not found, or unable to access the gtk+-2.0 package. Install pkg-config and the gtk+
development package, or disable the gui debugger, or the wxWidgets display library (whichever is being used).”
2 ERROR: pkg-config was not found, or unable to access the gtk+-2.0 package.Install pkg-config and the gtk+
development package,or disable the gui debugger, or the wxWidgets display library (whichever is being used)
解決辦法:
輸⼊:sudo apt-get install libgtk2.0-dev
(3) 出現 1 checking for C compiler default output file name… configure: error: C compiler cannot create
executables
解決⽅法:
輸⼊:sudo apt-get install libc6-dev
(4) 出現 1 configure: error: C++ preprocessor "/lib/cpp" fails sanity check
解決⽅法
輸⼊:sudo apt-get install build-essential
(5) 出現 1 X windows gui was selected, but X windows libraries were not found.
解決⽅法:
輸⼊:sudo apt-get install xorg-dev
或者在配置的時候加上–with-nogui
⼀般不會把全部的問題都出⼀遍,⼤家在解決完⼀項之後再次輸⼊:./cofigure –enable-debugger –enabledisasm
等待配置完成後看看有
沒有報錯資訊,沒有的話即可進⼊下⼀步,有的話根據報錯資訊解決錯誤,直到不再報錯為⽌
假設⼤家已經完成配置命令且⽆報錯資訊出現
輸⼊:make
此時命令⾏會接著跳英⽂,不⽤管,只要看最後⼏⾏有沒有報錯資訊
如果提⽰:
/usr/bin/ld: gui/libgui.a(gtk_enh_dbg_osdep.o): undefined reference to symbol [email protected]@GLIBC_2.1
//lib/i386-linux-gnu/libpthread.so.0: error adding symbols: DSO missing from command line collect2: error:ld
returned 1 exit statusmake: *** [bochs]
解決⽅法:
在ubuntu的⽂件管理器的搜尋欄⾥搜尋:makefile
會搜出很多名叫“makefile”的⽂件,找到⼤⼩為29kb的那個“makefile”,注意,有的圖示上會帶著⼀個鎖,
有的沒有,我們找不帶鎖的那個
開啟後下拉到90⾏左右,內容為:
LIBS = -lm -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0
-lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig -lfreetype
在這條指令後⾯加上:-lz -lrt -lpthread,完整的如下:
LIBS = -lm -lgtk-x11-2.0 -lgdk-x11-2.0 -lpangocairo-1.0 -latk-1.0 -lcairo -lgdk_pixbuf-2.0 -lgio-2.0 -lpangoft2-1.0
-lpango-1.0 -lgobject-2.0 -lglib-2.0 -lfontconfig -lfreetype -lz -lrt -lpthread
儲存後退出,此時再次在命令⾏⾥輸⼊:make
等待英⽂跳完,⼀般就不會再報錯,如果仍然報錯,找個繩⼦上吊吧
最後輸⼊:sudo make install 等待安裝完成 完成後輸⼊:bochs 會出現⼀個bochs的啟動選項,提⽰你載入配置⽂件或進⼊除錯模式等等,第6個就是除錯模式
再給⼤家送上⼀份bochs的配置⽂件模板:
megs: 32 romimage: file=/usr/local/share/bochs/BIOS-bochs-latest vgaromimage: file=/usr/local/share/bochs/VGABIOS-lgpl-latest floppya: 1_44=a.img, status=inserted boot: floppy log: bochsout.txt mouse: enabled=0 keyboard_mapping: enabled=1, map=/usr/local/share/bochs/keymaps/x11-pc-us.map
這個模板⾥的路徑指向的⽂件需要根據你的安裝⽬錄來調整,如過你不知道這些⽂件在哪⾥,可以在⽂件 管理器⾥直接搜尋⽂件名,然後找出絕對路徑,再根據路徑來更改模板的路徑即可 第四⾏的:1_44=a.img 表⽰你的系統映象⽂件的名稱,我的叫“a.img”是⼀個軟盤映象,⼤家要根據⾃⼰的 映象名來更改 模板修改完成後重新命名為:“bochsrc”即可 注意,映象⽂件和配置⽂件要放在同⼀個⽂件夾下,然後在命令⾏⾥進⼊到這個⽂件夾,輸⼊:bochs 啟動bochs後先選擇第⼆項,bochs會⾃動搜尋當前⽬錄下的配置⽂件,搜尋到以後會問你是不是要載入這 個配置⽂件,直接回⻋ 然後選擇第六項,注意,選擇哪個項就直接輸⼊數字再按回⻋即可 第六項是除錯模式,此時才能看到bochs的 啟動窗⼝,但是這個窗⼝暫時是不能接受命令的、 我們在命令⾏⾥⼀路輸⼊:c 就可以看到bochs正在運⾏我們的映象⽂件,除了“c”之外,bochs還有許多命令,⽐如檢視cpu當前狀態, 檢視暫存器狀態等等