追記
もう以下のサンプルは古くなってます.foo.c からのビルド時にコケます.
こちら http://qiita.com/items/f54f12db3d5eac45f871 に新しいエントリ書いてます.(追記終了)
以下本文
Ubuntu 10.04 amd64 on さくら VPS 1G (v3) で実験.
sudo aptitude install git-core build-essential zlib1g-dev libssl-dev libreadline6-dev
# zlib1g-dev, libssl-dev, libreadline6-dev は必要なのかどうか分からない (けどうちの環境には以前に入れてあったので一応記載)
git clone https://github.com/mruby/mruby.git
cd mruby
# この時点では bin lib ディレクトリが空っぽ
make
... # ズラズラーっとビルドの結果が出力される
bison -o ../../src/y.tab.c ../../src/parse.y
make[2]: bison: Command not found
make[2]: *** [../../src/y.tab.c] Error 127
make[1]: *** [../bin/mrbc] Error 2
make: *** [src/mrblib/mrblib.o] Error 2
bison が必要らしい.
sudo aptitude install bison
make clean
make
これで OK.bin ディレクトリ内に mrbc mruby mrubysample,lib ディレクトリ内に ritevm.a が出来ているはず.
そしたら http://mattn.kaoriya.net/software/lang/ruby/20120420121729.htm の foo.c をコピペ.include とか lib と同じ階層にとりあえず作る.
gcc -Iinclude -Isrc foo.c lib/ritevm.a -lm
-Isrc しないといけないのは変な感じです… あと -lm 必要です.pow とか sqrt とかが無いよーって言われるので気付く人は気付くはず.そしたらこれで a.out が出来るので
./a.out
1
2
3
やったねたえちゃん!mruby が動くよ!