👌
mruby/cをCMakeでビルドできるようにしてみた
需要があるかは知らないがmruby/cをCMakeでビルドできるようにしてみた。
なぜCMakeなのか
- RaspberryPi PicoのSDKはCMakeを前提に作られているのでCMakeに対応すると使いやすい
- 現状のだと必要なファイルを取り出して再構築する必要がある
- Visual Studioでもビルドできるようにしたい
- プロジェクトを作ればいいのだが毎度作るのは手間
なおWidnowsのHALはないので現状ビルドできない。手元では用意してあるがそれは別のお話。
ビルドの仕方
HALがデフォルトのposixの場合
cmake -S . -B build
cmake --build bulid
HALがrp2040(RaspberryPi Pico)の場合
cmake -S . -B build -DMRBC_USE_HAL=rp2040 -DMRBC_REQUIRE_ALIGNMENT=32 -DMAX_REGS_SIZE=256 -DMAX_SYMBOLS_COUNT=500
cmake --build build
RaspberryPi PicoでLチカ
ソースコードの取得
git clone https://github.com/k-mana/mrubyc-rp2.git --recursive
ディレクトロリ構造
変数の定義が他に影響しないようにmrubycを一段ラップしている。
.
├── CMakeLists.txt
├── blink.c
├── mrubyc
│ ├── CMakeLists.txt
│ └── mrubyc
└── pico_sdk_import.cmake
ビルド
export PICO_SDK_PATH=<pico-sdkのパス>
cmake -S . -B build
cmake --build build
ls build/blink.uf2
おしまい。
Discussion