TinyCLR OS ファームウェアビルド手順
環境構築して、デジタル出力の次は、デジタル入力…が普通だと思いますが、めっちゃポーティング欲が出てきているので、そっちへ向かいましょう!
やり方は、Porting TinyCLRに簡潔に書かれています。これにそってやりたいと思います。
TinyCLRをクローン
githubに挙がっているTinyCLRをローカルにcloneします。
git clone https://github.com/ghi-electronics/TinyCLR-Ports
GCCをインストール
GNU ARM Embedded ToolchainからGCCをダウンロード、インストールします。
今回は、gcc-arm-none-eabi-6-2017-q2-update-win32.exeをダウンロードして、起動することでインストールします。
デフォルトだと、C:\Program Files (x86)\GNU Tools ARM Embedded\6 2017-q2-update フォルダにインストールされます。
CMSISを配置
ARM.CMSIS.4.3.0.packをダウンロードして、拡張子を.zipに変更、中身をTinyCLRのCMSIS配下に配置します。
ARM.CMSIS.4.3.0.packには、このように入っているので、
C:\TinyCLR\TinyCLR-Ports\CMSIS に配置します。
TinyCLR Coreライブラリを配置
TinyCLR-PortsのreleasesからTinyCLR_Core.0.5.0.zipをダウンロード、中身をTinyCLRのCore配下に配置します。
よっしゃ、ビルドするぞー
コマンドプロンプトを立ち上げて、gccの環境変数設定バッチファイルを起動します。
"C:\Program Files (x86)\GNU Tools ARM Embedded\6 2017-q2-update\bin\gccvar.bat"
次に、カレントディレクトリをクローンしたところに変更。
cd C:\TinyCLR\TinyCLR-Ports
そして、ビルドのバッチファイルを起動!
build.bat FEZ
引数はFEZ, G30, G80, FEZCerberus, Netduino3, Quailが指定できます。 詳しくはbuild.batの中身を見てください。
おおーー!!
最後に
NETMFと比べて、非常に簡単。特にハマるところは無いでしょう。
それにしてもビルドが速い。Coreの部分が事前にビルドされているから当たり前といえばそうですけど。
LLILUMの何時間もビルドした結果、エラーとか体感していると幸福感ありますw