VMWare上のDebianにns-2をインスコするまで。
macにVMWare Fusionをインストールして、
Debianを入れ、ns-2をそこに入れたお話。
まずはVMWare Fusionをサイトからダウンロード。
なんかパートナー登録しなきゃいけないみたいなので、登録。
もらったライセンスを使って、30日の期間限定のを入れる。
また、Debianのisoイメージを用意。
Macのほうで仮想ドライブのソフトを知らないので普通にDVDに焼いて使いました。
そいで、VMWare Fusion起動→新規作成→Debianインストール。
特に詰まることなくインストール終了。
それでns-2をインスコしようとしたんだけど、
gccとか入ってないよ!って言われたので
sudo apt-get update
sudo apt-get install build-essential xorg-dev libpcap-dev libtool gcc g++ xgraph
この辺りを入れとくと問題なさそう。
$ wget "http://downloads.sourceforge.net/project/nsnam/allinone/ns-allinone-2.35/ns-allinone-2.35.tar.gz"
$ tar zxvf ns-allinone-2.35.tar.gz
$ cd ns-allinone-2.35
$ ./install
インストールが長い...
終わったら、更に下のディレクトリへ写ってバリデーション。
$ cd ns-2.35
$ ./validate
んで,ホームディレクトリに移って
.bashrcを開いて編集。
# ns-2
export LD_LIBRARY_PATH=/インストールしたディレクトリ/ns-allinone-2.35/lib:${LD_LIBRARY_PATH}
export LD_LIBRARY_PATH=/インストールしたディレクトリ/ns-allinone-2.35/otcl-1.14:${LD_LIBRARY_PATH}
export TCL_LIBRARY=/インストールしたディレクトリ/ns-allinone-2.35/tcl8.5.1-/library:${TCL_LIBRARY}
export PATH=/インストールしたディレクトリ/ns-allinone-2.35/ns-2.35:$PATH
export PATH=/インストールしたディレクトリ/ns-allinone-2.35/nam-1.15:$PATH
export PATH=/インストールしたディレクトリ/ns-allinone-2.35/ns-2.35/bin:$PATH
export PATH=/インストールしたディレクトリ/ns-allinone-2.35/xgraph-12.2:$PATH
を書き込んで保存。
これでnsコマンドで呼び出せていれば問題なし...
これでネットワークシュミレーションができるよ!
■
macにpython3.2を入れるまで。
mac portsで入れられるらしいので、
pythonを入れる前にportのアップデート。
mac ports入れてない人はインストールしてくださいな。
これを書いた時点では、2.0.4が最新でした。
そのあと、
$ sudo port install python32<<
これを打つと最後のメッセージにTo make python 3.2 the default (i.e. the version you get when you run
'python'), please run:
sudo port select --set python python32と出てくるので
sudo port select --set python python32
ってやってやればいいかと思ったら、
まだ元のバージョンから変えられないのでアレ?ってなってるところ。
ある記事によると、再起動すればいけるらしいが...2012/4/17 追記
sudo port select python python32
でいけるみたいです。
コメントをくれたjeeさんありがとうございます!
RailsでTwitterBootstrapを使うまで。
TwitterBootStrapを使ってデザインを楽チンにしようと考えたんですが、
rails用のgemがあるらしいということで導入してみた。
railsアプリのGemfileに
を書きこんで
$ bundle install
$ rails g bootstrap:install
すればいいって書いてあったけど、動かなかったのでとりあえず、
を事前に打っておいたら動いたのだった... これって常識なのかしら?
レイアウト生成は、
$ rails g bootstrap:layout 名前
でサクッとできた。ちょっと感動...
あとは自分でごりっと書き換えればいいのかしら?
参考にしたのはこちら。
いろいろ詳しく書いてあるので読んでみればいいと思います!
Twitter bootstrap on rails
rails on apache
Railsアプリをapacheで動かした時に自動的にproductionモードになるので、それを防ぐときは
httpd.confに
RailsEnv development
を書き加えればいいらしい。
んで、apaceh上で動かした時になぜかエラー吐くので調べていった結果、
JavaScriptRunTimeが必要だったぽい。
ruby on rails 3.1 - ExecJS and could not find a JavaScript runtime - Stack Overflow
↑によるとexecjsとtherubytracerが必要らしい...
これをGemfileに書き込む
gem 'execjs'
gem 'therubyracer'
しかし動かない...と思ったら、これらをgemでinstallしてないだけでした☆(ゝω・)vキャピ
$gem install execjs
$gem install therubytracer
をしておきましょう(`・ω・´)
git pushしたときにハマったことメモ
まず、git push originしたときにうまく動いてくれなかったので、
サーバ側の設定を書き換え。
git config --add receive.denyCurrentBranch ignore
そしてpushしたものの、サーバ側のファイルに反映されない...
ので、
git reset --hard
したら反映された。
ただ、このコマンドよくわかってないので危険かも?
httpのステータスコード
Rubyでhttpリクエスト送って返ってくるレスポンスのステータスコードは
response.codeで得られるらしい。
response = http.get("http://peropero.com")
puts response.code
ちなみにステータスコードはStringクラスなので比較するときは注意
TwitterのOauth認証のスクリプト【Ruby】
ざっくりとはこんな感じ。
多分通るはず...
require 'rubygems'
require 'oauth'#require 'oauth-patch' #Rubyが1.9以上の人
#以下2つを書き換え
CONSUMER_KEY = "自分のを入れてね☆彡"
CONSUMER_SECRET = "自分のを入れてね☆彡"#コンシューマとしてアクセス
consumer = OAuth::Consumer.new(
CONSUMER_KEY,
CONSUMER_SECRET,
{:site => 'http://api.twitter.com',
:request_token_path => '/oauth/request_token',
:authorize_path => '/oauth/authorize',
:access_token_path => '/oauth/access_token'}
)#コンシューマ・トークンを取得
#「:oauth_callback=>"oob"」=「コールバックは使わない」
request_token = consumer.get_request_token(:oauth_callback => "http://dev.ash1taka.com/authentication.rb")
request_token.each{ |key, value|
puts key +"=" +value
}#URLにアクセス
system('open', request_token.authorize_url )
#puts "Access this URL and approve => #{request_token.authorize_url}"#認証コードを入力
print "Input OAuth Verifier: "
oauth_verifier = gets.chomp.strip#アクセス・トークンを取得
access_token = request_token.get_access_token(
:oauth_verifier => oauth_verifier
)puts "Access token: #{access_token.token}"
puts "Access token secret: #{access_token.secret}"