『組み込みOS自作入門』をMac 10.8で始める

第1章のHello world!を出力させるまでにやった作業記録です。この本が出てからだいぶたっていて、使うライブラリはどれもメジャーバージョンが上がっているような状況でしたが、それら最新のものを使っても問題なく動作しました。ちなみにシリアル通信はminicomを使いました。
1
フィール・フィジックス(植田達郎) @feel_physics_jp

MacBook AirにはCOMポートがないので、COMポートをUSBに変換するケーブルのドライバをここからダウンロードする / “FTDI FT232 driver download” http://t.co/ts6zsUky

2012-12-30 10:47:31
フィール・フィジックス(植田達郎) @feel_physics_jp

先駆者のページに「公式のドライバは問題あり」と書かれていたものの、代替するドライバは全て動かず、仕方なく公式のドライバをインストール。これでようやくシリアルポートが見えた。

2012-12-30 11:48:20
フィール・フィジックス(植田達郎) @feel_physics_jp

必要なライブラリをダウンロードしたが、最初の解凍が「binutils-2.21.tar.bz2 is not a bzip2 file.」と言われてできない。心が折れて全部Homebrewでインストールしてしまった。これ動くんかいな・・・

2012-12-30 11:49:57
フィール・フィジックス(植田達郎) @feel_physics_jp

クロスコンパイル用のbinutilsを--target=h8300-elfオプションでmake中。クロスコンパイルとはマイコンの中に入れるプログラムをコンパイルすること。

2012-12-30 12:04:56
フィール・フィジックス(植田達郎) @feel_physics_jp

gccをコンパイルするためにgmp、mpfr、mpcをHomebrewでインストール

2012-12-30 12:42:54
フィール・フィジックス(植田達郎) @feel_physics_jp

「mpc」は「libmpc」と入力しないと、別のパッケージが入ってしまうので注意。

2012-12-30 12:44:35
フィール・フィジックス(植田達郎) @feel_physics_jp

gccをコンパイルするときのオプション(Homebrewは/usr/local/includeに入る):with-gmp=/usr/local/include --with-mpfr=/usr/local/include --with-mpc=/usr/local/include

2012-12-30 12:47:08
フィール・フィジックス(植田達郎) @feel_physics_jp

gccのコンパイルが終わるのを待っている。ていうか自分の人生の中でgccコンパイルするなんて思わなかった。

2012-12-30 12:51:39
フィール・フィジックス(植田達郎) @feel_physics_jp

書き込みプログラムをこちらに変えたところ無事書き込みできた! / “H8/3069F writer for KOZOS (kz_h8write) プロジェクト日本語トップページ - SourceForge.JP” http://t.co/PidKP6vQ

2012-12-30 13:49:38
フィール・フィジックス(植田達郎) @feel_physics_jp

ついに「Hello World」出ました!いやー、@su_exs 先生のご指導の賜物です。 http://t.co/C7Py6RzF

2012-12-30 14:00:10
拡大
フィール・フィジックス(植田達郎) @feel_physics_jp

「組み込みOS自作入門」Macでやるときはドライバは「md_PL2303_MacOSX10.6_dmg_v1.4.0」で大丈夫です。その代わり書き込みツールは「kz_h8write」を使って下さい。

2012-12-30 14:15:18
フィール・フィジックス(植田達郎) @feel_physics_jp

Mac 10.8.2 MTライオンにgmp-5.0.5(brew)、mpfr-3.1.1(brew)、libmpc-1.0.1(brew)、binutils-2.22(コンパイル)、gcc-4.5.2(コンパイル)で「組み込みOS自作入門」H8マイコンへの書き込みに成功しました。

2012-12-30 14:25:00