環境構築
Ns2のインストール
ダウンロード
まず、ns-allinone-x.xx.tar.gz;をダウンロード。
例えば以下のようなページからダウンロード可能。
インストール
準備するもの(今回は以下の通り)
これらのバージョンの組み合わせによってはうまくいかないことが多々;ある。
- ns-allinone-2.31.tar.gz
- gcc-4.2.1
- bash-3.1
- um-olsr-0.8.8.tgz
- ns-allinone-2.31.tar.gzを解凍、インストール
#tar xvzf ns-allinone-2.31.tar.gz
#cd ns-allinlne-2.31
#./install
- うまくインストールできているか確認
#cd ns-2.31
#./validate
- olsrのパッチを当てる
#cd ns-allinone-2.31/ns-2.31
#tar xvzf um-olsr-0.8.8.tgz
#ln -s ./um-olsr-0.8.8 ./olsr
#patch -p1 < olsr/um-olsr_ns-2.31_v0.8.8.patch
- 再びmake
#./configure
#make distclean
#./configure
#make
- PATHを通す
#PATH=$PATH:/...../ns-allinone-2.xx/ns-2.xx:
/...../ns-allinone-2.xx/tcl8.y.y/unix:
/...../ns-allinone-2.xx/tk8.z.z/unix:
/...../ns-allinone-2.xx/nam-1.tt
※olsrのパッチは今回のバージョンだとns-2.29向けに作成されている;
そのため、使用するバージョンに合わせて書き換える必要がある;
また、追加する行番号もバージョンによって変わってくるので適宜書き換える;
うまくインストールができない場合
nsのバージョンが低い場合に起きる問題
olsrのパッチがうまくあたらない;
解決策;
- nsのバージョンを上げる
- 頑張ってパッチを書き換える(そこまで量は多くない)
bashのバージョンの違いによって起こる問題
バージョンが3.0以下なら問題ないが、3.1以降だと./installを実行したときに次のようなエラーが出る;
checking system version (for dynamic loading)...
./configure: line 7624: syntax error near unexpected token `)'
./configure: line 7624: ` OSF*)'
tcl8.3.2 configuration failed! Exiting ...
Tcl is not part of the ns project. Please see www.Scriptics.com
to see if they have a fix for your platform.
解決策;
次のファイルを編集する
ns-2.29/tcl8.4.11/unix/tcl.m4
ns-2.29/tk8.4.11/unix/tcl.m4
ns-2.29/otcl-1.11/configure.in
各ファイルの
system=MP-RAS-`awk '{print $3}' /etc/.relid'`
と言う行を
system=MP-RAS-`awk '{print $3}' /etc/.relid`
と書き換えるだけ。
gccのバージョンの違いによって起こる問題
- gccのバージョンを上げる。
- nsのバージョンを下げる。
- gccのバージョンを下げて新しいnsをインストールしようとするとextra qualificationは出ないが、別のエラーが出てインストール不可
最終更新:2008年01月25日 13:22