仮想マシンのbochsをビルドしてみた。
環境はMac OS X SnowLeopard(10.6.6)。
confの設定が初めよくわかんなかったからその件のメモφ(..)
ソース落としてきてから、コンパイル先のディレクトリへ移動。
> cd bochs-2.4.5 > sh .conf.macosx > make > make install
でいいんだけど、うまくいかない。
大学でもらった資料ではよくわかんなかったから、調べてみると
http://stackoverflow.com/questions/1677324/compiling-bochs-on-mac-os-x-snow-leopard
でそれっぽいものを発見。
bochsってデバッガはオプションなんだな。ついでに逆アセンブラも使うために、それも含めて.conf.macosxをφ(`д´)カキカキ
ちょこっとだけど書き加えたconfファイルを以下に。
".conf.macosx"
#!/bin/sh # this sets up the compile for MacOS X # # To support plugins on macosx, you must have "dlcompat" installed. You can # get dlcompat by installing the fink package "dlcompat-devel". On the SF # compile farm, dlcompat is in /sw/include and /sw/lib, so we have added # those paths to the environment variables. set echo CFLAGS="-arch i386 -m32 -pipe -O3 -I/sw/include -fomit-frame-pointer -finline-functions -falign-loops=16 -falign-jumps=16 -falign-functions=16 -falign-labels=16 -falign-loops-max-skip=15 -falign-jumps-max-skip=15 -fprefetch-loop-arrays $CFLAGS" CPATH="/sw/include" CPPFLAGS="" CXXFLAGS="$CFLAGS" LDFLAGS="-arch i386 -m32 -L/sw/lib" CXX="g++ -arch i386 -m32" #CFLAGS, LDFLAGSに"-arch i386 -m32"を書き加えた。 #それとCXXについて書いて、下にもexport CXXを追加。 export CFLAGS export CPATH export CPPFLAGS export CXXFLAGS export LDFLAGS export CXX #デバッガオプションとかは、configureのオプション指定なので、それもここで設定。 #したの--enable-debuggerと--enable-disasmがそれ。 ./configure --enable-sb16 \ --enable-ne2000 \ --enable-all-optimizations \ --enable-cpu-level=6 \ --enable-x86-64 \ --enable-pci \ --enable-acpi \ --enable-debugger \ --enable-disasm \ --enable-clgd54xx \ --enable-usb \ --enable-plugins \ ${CONFIGURE_ARGS}
なんとかビルド通った。
あとはコマンド検索パスを追加して終わり。
今回は/usr/local/に置いたから、
/usr/local/bochs/bochs.app/Contents/MacOS
を追加。これで起動できるようになった。
あとは、.bochsrcの設定か。。。
終わり。