mrbgemsの使い方

本日、本家のmrubyに mrbgemsが pull-up されたので、mrbgemsの使い方について簡単にまとめておきます。

mrbgemsとは

mrbgemsとは、mruby拡張ライブラリを簡単に組み込むことができる仕掛けです。crubyのgemと考え方は近いですが、mrubyの場合は機器やアプリへの組み込みが主体なので、ランタイムではなくビルドタイムに拡張ライブラリを組み込みます。

使い方

本家mrubyにmrbgemsが組み込まれはしましたが、現在のところ本機能はdefault disableになっています。mrbgemsを有効にするには、以下の箇所を書き換える必要があります。
Makefile(追加)

export ENABLE_GEMS = true

include/mrbconf.h

...
#define DISABLE_GEMS           /* Package Manager mrbgems */
//#define DISABLE_GEMS         /* Package Manager mrbgems */
...

mrbgems/GEMS.active (サンプルコードを追加する場合)

$(MRUBY_ROOT)/doc/mrbgems/ruby_extension_example

あとは、通常通り make コマンドを実行するだけで、ruby_exension_example が自動的に組み込まれます。mrbgemsはソースコードのパスにmrubyのソースコードの外を指定することもできるので、mrbgemのソースコードのみを配布することが簡単にできます。