LoginSignup
2
1

More than 5 years have passed since last update.

mRDT で mruby をビルドしてみる

Posted at

mRDT (mruby Development Tool)は,mruby を用いたアプリケーションを Eclipse で開発するためのプラグイン/フィーチャーのセットです.
独自開発部分は EPL-1.0 で,依存するコンポーネントも OSI approved なライセンスに基づき,無償で利用できます.

本稿では,mRDT を用いて,mruby の開発を行ってみます.

mRDT のインストールについては,下記を参照してください.

minirake プロジェクトの作成

mRDT のインストールは完了したものとして,実際に mruby のビルドを行ってみます.

新規プロジェクトの作成ダイアログを出す方法はいくつかありますが,ここではメニューから呼び出してみます.
[File] - [New] - [Project...] と辿ります.

新規プロジェクト作成ウイザードの呼び出し

すると,生成するプロジェクトの種類を選ぶツリーリストが現れますので,[Mruby]-[minirake project]を選択し,[Next >]を押します.

minirake project の選択

(将来のバージョンでは,[File] - [New] - [Mruby Project] で選択できるようになるかもしれません.)

プロジェクト名の入力

ダイアログの画面が遷移し,プロジェクトの名前や場所を指定するよう促されます.

プロジェクト名の入力

本稿では,my-first-mruby と名づけました.自由な名付けが可能ですが,多バイト文字や空白は避けたほうが無難でしょう.

その他の項目については,弄る必要はありません.
[Finish]を押して生成を終了することができますが,ここで[Next >]を押してテンプレートを選択することで,環境構築の手間を省くことができます.

テンプレートの選択

テンプレートの選択

テンプレート選択ページでは,典型的な mruby のソースツリーのアーカイブを選択することができます.
ここでは,軽量Rubyフォーラムがリリースした安定版1.0.0を選択するために[mruby forum (core only)]をクリックします.
[Finish]を押すと,ダイアログが閉じます.

ビルド

mRDT は,プロジェクト内のファイルの更新を自動検知して,minirake を実行します.
テンプレートの選択を行うと,ファイル群がプロジェクト内にデプロイされますので,minirake が実行されます.

実行の様子は,ステータスバーや,Consoleタブの出力で確認ができます.

ビルド中を示すステータスバー

コンソールタブ

ビルド結果の確認

プロジェクトのツリーを開くと,bin/ ディレクトリに,生成された実行可能形式 (mruby / mirb / mrbc) が表示されるはずです.

スクリーンショット 2014-02-24 11.19.29.png

プロジェクトのリフレッシュ

ビルドが完了すると,プロジェクトのツリー表示がが更新される…はずですが,なんらかのバグにより,ビルドが完了してもリフレッシュされない場合があります.その場合は,プロジェクトのルートをクリックしたあとで右クリックメニューを開き,[Refresh] を選択してください.

プロジェクトのリフレッシュ

この先の注意点

ここから先は,ほぼ mruby と Eclipse の知識だけで実開発を進められるはずです.
しかし,mRDT 固有の癖のようなものもあります.
多くのユーザが疑問に思う点について,いくつか挙げておきます.

CDT との関係

C/C++ での開発を支援するため,多数の機能を CDT から継承/活用しています.しかし,ビルダ周りはCDTが提供するものを一切使っていません.ビルドの内容をカスタマイズしたい場合は,minirake の関連ファイルを修正することで対応してください.

DLTK/Ruby との関係

Ruby スクリプトでの開発を支援するため,多数の機能を DLTK から継承/活用しています.しかし,mruby 固有の機能との統合は,不十分です.

他の Ruby 関連プラグインとの関係

Eclipse での Ruby 開発には,DLTK 以外にもいくつか存在しますが,それらと mRDT を混在させたときの挙動は整理されていません.

おわりに

mruby はまだアーリーステージにあり,ユーザのスキルも高めです.
そのため,vimやEmacsのような通好みのCUIエディタで編集し minirake を実行,という紹介になりがちです.
mruby を広く使って頂こうとするとき,要求スキルの高さは,いずれ問題になるかもしれません.
mRDT 開発チームはそのように考えています.

mRDT が,ユーザスキルの敷居を少しでも下げ,初学者にも優しい mruby への一助になれば幸いです.

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1