Ubuntu14 にTrema 0.4.7 をインストールしました


まえおき

やっとでパーフェクトRuby(技術評論社)とプログラミング言語Ruby(オライリージャパン)を読み終わりました!続いてはRubyによるクローラー開発技法(ソフトバンククリエイティブ)と、メタプログラミングRuby(ASCII)と、クラウド時代のネットワーク技術OPENFLOW実践入門(技術評論社)の3冊をInterleaveに進めていこうと思います。今度は実際にコードを書いて進める時間が多いと思うので楽しみなのです。
リファクタリング:Rubyエディション (ASCII)も立ち読みはしましたが、まだちょっとばかり難しそうだったのでそっと本棚に戻してきました。

Interleave?

真か嘘かは定かで無いですが
参考サイト
Wired Geekdad Everything You Thought You Knew About Learning Is Wrong
によりますと、もくもくと1つのことを進めるよりも同時並行で色々と進めた方が効果が高い!!という記事を鵜呑みにして(同時に進めた方が楽しいしね)、Let's EnJoyで進めていこうじゃないかという試みです。

必要そうなものをインストール

開発用のUbuntuはバーチャルボックスで新たに用意しました。

takeken@ubuntu:~$ sudo apt-get install gcc make libpcap-dev libsqlite3-dev git gem libssl-dev pkg-config glib-2.0

Rubyの環境も用意します。Ruby+ネットワークの勉強もできるなんていいものを見つけたよ。

takeken@ubuntu:~$ git clone git://github.com/sstephenson/rbenv.git .rbenv
takeken@ubuntu:~$ git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build
takeken@ubuntu:~$ cat >> ~/.bashrc
export PATH=$HOME/.rbenv/bin:$PATH
eval "$(rbenv init -)"
^C
takeken@ubuntu:~$ tail -2 ~/.bashrc
export PATH=$HOME/.rbenv/bin:$PATH
eval "$(rbenv init -)"
takeken@ubuntu:~$ exec $SHELL -l

今回はRuby 2.0で進めます。

takeken@ubuntu:~$ rbenv install 2.0.0-p643

takeken@ubuntu:~$ rbenv global 2.0.0-p643
takeken@ubuntu:~$ rbenv rehash
takeken@ubuntu:~$ ruby -v
ruby 2.0.0p643 (2015-02-25 revision 49749) [x86_64-linux]

仕上げに

takeken@ubuntu:~$ cat > ~/.gemrc
gem: --no-rdoc --no-ri
install: --no-rdoc --no-ri
update:  --no-rdoc --no-ri
:verbose: true
^C
takeken@ubuntu:~$ exec $SHELL -l

Tremaをインストールします

参考サイト
Github Trema TremaGithub
sinclains's blog Trema 0.4.7 install (Ubuntu14.04 + Ruby 1.9.3)

Gemのバージョンをあわせる必要があるようです。そのまま進めたらエラーを吐きました。

takeken@ubuntu:~$ sudo gem install rubygems-update -v 1.8.25
takeken@ubuntu:~$ sudo update_rubygems

あとはTrema本体とWiresharkを入れて終わりのようでした。

takeken@ubuntu:~$ sudo gem install trema
takeken@ubuntu:~$ trema --version
trema version 0.4.7
takeken@ubuntu:~$ sudo aptitude -y install wireshark

テスト

OpenFlow実践入門にあるHelloworldを実行してみます。

takeken@ubuntu:~/trema$ trema run ./hello-trema.rb
Hello, Trema!
^C
 

ウム。
問題ないようです。

今日はすっごい久しぶりにPythonを書いてみたらRubyならこれで動くのに!(^_^メ)メキィ!
と思うところがあり、こういう経験は初めてだったりした。

※メキィ:キーボードが折れた音。

Trema

冠婚葬祭のなんやらは全く関係なくって(どうしてもあの歌が頭に流れるんだよ)、Ruby用のOpenflowの開発環境のことです。
一番最後にTremaのことを書くのはおかしいなぁと書きながら書きなおそうか少しだけ悩んだけれど、爪が伸びててキーが打ちにくいのでこのままにするぜぃ!
TremaはOpenflowの開発環境のなかではダントツでコンパクトに仕上げられるようで、コンパクトにできるのはPythonだという固定観念を持っていたような感じなので、なかなか新鮮です。

おわり

Similar Posts:


Leave a Reply

Your email address will not be published. Required fields are marked *