1. 程式人生 > 實用技巧 >debian上bochs的安裝

debian上bochs的安裝

跟著<作業系統真象還原>, 要安裝bochs, 我傻乎乎地想跟書上一樣就好了. 結果, 大錯特錯, 折騰了很久. 報錯是這個:

gtk/gtk.h: No such file or directory
 #include <gtk/gtk.h>

沒有這個標頭檔案, 網上搜出來, 安裝

sudo apt-get install libgtk2.0-dev

還是報錯. 我按照網上的指示, 看有沒有這個資料夾, /usr/include/gtk
確實有.

我看了看這篇部落格, 其實跟著他這個做沒問題. 那就是在bochs目錄下的gtk目錄下, 修改Makefile的104行(可能有所不同, 反正是編譯命令), 末尾加上pkg-config --cflags --libs gtk+-2.0

. 我用的是另一種方式, 查詢gui下的Makefile下的, -I出現的地方, 加上了-I /usr/include/gtk-2.0/gtk, 也解決了編譯問題.

不過報出了新的錯, 這次是連結錯誤:

error adding symbols: DSO missing from command line

這個花費了我大量時間, 找到了這篇部落格.
我發現無論是bochs下, 還是gui下的Makefile, LIBS都比它少得多. 我懷疑是這個Makefile本就殘缺不全. 我將信將疑把這個部落格上的LIBS敲上去了.

LIBS = -lgtk-x11-2.0 -lgdk-x11-2.0 -lz -lrt -lm -lpthread -lfreetype -lglib-2.0 -lgobject-2.0 -lfontconfig -lpango-1.0 -lcairo -lgdk_pixbuf-2.0 -lpangocairo-1.0 -lpangoft2-1.0 -lgio-2.0 -latk-    1.0

然後就不報連結錯誤了. make install後報出, 路徑找不到, 實際上是需要手動設定安裝路徑your_path, 我安裝在了home下.

其實這個過程遠沒有我說的這麼輕易, 我踩了很多坑, 因為試了很多不work的部落格. 還是搞懂c/c++編譯命令重要, 慚愧. 我的問題是, 連結庫這些我還沒搞懂. 還有很多需要學習的.