ビルド
OpenOCDはバイナリでも配布されているが、USB-Blaster機能をonにしたいので自分でビルドした。
環境
- ターゲット環境:Windows (x86_64)
- ビルド環境:Linux (Fedora14 x86_64)
- クロスコンパイラ:mingw (x86_64-w64-mingw32)
誰がこんな環境でビルドするんだよwてな組み合わせです。私がこんな環境なもので ^^;
上記と異なる環境の場合でも、bootstrap.shの先頭にある変数をいくつか編集すれば通るとは思います。 なお、32-bit版mingwクロスコンパイラのバグ(%I64dが使えない)への対策は既に入れてあります。
必要なファイル
- libusb-win32-bin-1.2.6.0.zip (http://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/1.2.6.0/)
- libusb-win32-src-1.2.6.0.zip (同上)
- libftdi-0.20.tar.gz (http://www.intra2net.com/en/developer/libftdi/download.php)
- openocd-0.6.0.tar.bz2 (http://sourceforge.net/projects/openocd/files/openocd/0.6.0)
パッチ
- bootstrap.zip (.shの拡張子はdokuwikiにアップできないので仕方なくzipに…)
- パッチ+上記アーカイブ一式のセットをこっそり…openocd-0.6.0_buildpack.tar.bz2
手順
- 必要なアーカイブとパッチ(展開した後のsh)を同じディレクトリに置く
- ./bootstrap.shを実行 (アーカイブの展開、ソースのパッチ当て、configureが実行されます)
- makeを実行 (各ディレクトリでmakeされ、生成物がbuildにコピーされます)
- buildディレクトリに成果物一式がまとめられているので、Windows環境へもっていく。
補足
- 上記bootstrap.shでは以下のJTAGツールを有効にします。追加したければ openocd の configure 叩いているところを編集すればよろし。
- JLink(segger社)
- JTAG-ARM-EW(Olimex社)
- USB-Blaster(Altera社)
- FT2232使用JTAG(各社)
- ST-Link(STMicroelectronics社)
- make distcleanで手順1の直後の状態まで戻せます。