GR-CITRUSのFirmwareをビルドする方法 for WindowsのmacOS版です。
GR-CITRUSは、mrubyが気軽に使える小型ボードです。Chrome Appの「Rubic」を使うことでプログラムの作成から実行までスムーズに行うことができます。
標準のファームウェアでもそれなりに遊べますが、ちょっとしたものを作ろうとするとカスタマイズしてビルドしたくなることがあります。ビルドのためにはRXマイコンのクロスコンパイル環境を作る必要がありますが、macOS向けにはGNU Toolsが提供されていないため、簡単ではないようです。そこで、ここではmacOS版のIDE for GRを使ったもう少し簡単なビルド手順を紹介します。
#必要なもの
この記事ではmacOS High Sierraを使っています。
その他、gitなども必要です。私の環境には、Railsを動かすためにrubyやgitなど一式諸々が入ってしまっているため詳細が確認できません。すみません。
#IDE for GRのダウンロード
がじぇっとるねさすのWebサイトからIDE for GR 1.00のMac用をダウンロードします。
zipファイルの中身を任意のフォルダに解凍し、IDE4GR.appをApplicationsへインストールしてください。
#環境設定
IDE for GRの中に、RXマイコン向けのコンパイラが入っています。ターミナルを開き、そこにPATHを通してください。私は.bash_profile
に追加しました。
export PATH="/Applications/IDE4GR.app/Contents/Java/hardware/tools/gcc-rx/rx-elf/rx-elf/bin/:$PATH"
設定後、rx-elf-gcc --version
を実行してエラーが表示されないことを確認してください。
$ rx-elf-gcc --version
rx-elf-gcc (GCC_1.19script_6.3.rx) 4.8-GNURX_v14.03
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
#GR-CITRUSのソースコードの取得
githubのwakayamarb/wrbb-v2lib-firmリポジトリからmasterブランチをクローンします。
$ git clone https://github.com/wakayamarb/wrbb-v2lib-firm
#makefileの修正
cloneしたソースコードのfirmware_release
フォルダにあるmakefileを自分の環境に合うように書き換えます。書き換えるのはGNU_PATH:=
の一箇所だけです。IDE for GRへのパスに書き換えます。
GNU_PATH := /Applications/IDE4GR.app/Contents/Java/hardware/tools/gcc-rx/rx-elf/rx-elf/
#make
上記で修正したmakefile
があるfirmware_release
フォルダに移動し、make
コマンドを実行します。
$ cd firmware_release
$ make
(中略)
rx-elf-objcopy -O binary ./gr_build/citrus_sketch.x citrus_sketch.bin
rx-elf-objcopy -O srec -I elf32-rx-be-ns ./gr_build/citrus_sketch.x ./gr_build/citrus_sketch.mot
$
正常終了すると、makefile
と同じフォルダにあるcitrus_sketch.bin
ファイルが更新されているはずです。
ビルドしたファームウェアを書き込む場合は、GR-CITRUSのリセットボタンを押してUSBメモリとして認識させた後、citrus_sketch.bin
ファイルをGR-CITRUSにコピーしてください。