「環境構築」の編集履歴(バックアップ)一覧に戻る

環境構築 - (2008/01/25 (金) 13:21:24) のソース

** 環境構築

** Ns2のインストール
** ダウンロード
まず、&color(red){ns-allinone-x.xx.tar.gz};をダウンロード。~
例えば以下のようなページからダウンロード可能。~
- [[http://www.isi.edu/nsnam/]] 
- [[http://www.nemoto.ecei.tohoku.ac.jp/~tsuno/hiki.cgi?ns-2%A4%CE%A4%E2%A4%CE%A4%B9%A4%B4%A4%AF%B4%F0%CB%DC%C5%AA%A4%CA%BB%C8%A4%A4%CA%FD]]
** インストール
準備するもの(今回は以下の通り)~
これらのバージョンの組み合わせによってはうまくいかないことが&color(red){多々};ある。
- 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



&color(red){※olsrのパッチは今回のバージョンだとns-2.29向けに作成されている};~
&color(red){そのため、使用するバージョンに合わせて書き換える必要がある};~
&color(red){また、追加する行番号もバージョンによって変わってくるので適宜書き換える};

** うまくインストールができない場合

*** nsのバージョンが低い場合に起きる問題
&color(red){olsrのパッチがうまくあたらない};~
&color(blue){解決策};|~
- nsのバージョンを上げる
- 頑張ってパッチを書き換える(そこまで量は多くない)
*** bashのバージョンの違いによって起こる問題
&color(red){バージョンが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.

&color(blue){解決策};~
次のファイルを編集する
 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のバージョンの違いによって起こる問題
&color(red){gccのバージョンが新しいと(今回確認したのは4.1以降)"extra qualification"というエラーが出る。};~
&color(red){参照:};[[http://www.fourmilab.ch/fourmilog/archives/2006-05/000699.html]]~
ちなみに、ver4.0は未確認だが、3.4以前のバージョンならこのエラーは出ない。~
&color(blue){解決策};~
- gccのバージョンを上げる。
- nsのバージョンを下げる。
- gccのバージョンを下げて新しいnsをインストールしようとするとextra qualificationは出ないが、別のエラーが出てインストール不可