Fedora7 on VMwareでns-2を動かす

The Network Simulator - ns-2
WinXPだとcygwinで動かせるんだけども,Vistaだとどうも簡単に動いてくれそうにないのでVMware上で動かすことにした.しかし,OSのDVDイメージを落としてきてVMwareイメージを作るのも面倒なので,できあいのものを落としてくる.

入れる時点での環境はこんなもの

  • X環境:GNOME
  • ns-allinone-2.31.tar.gz
  • gcc -v => 4.1.2 20070502
  • uname -r => 2.6.22.4-65.fc7


解凍して起動するととりあえずGNOMEが立ち上がる.しかし,当然日本語フォントなどが入ってないのでシステムの言語を切り替えても文字化けの嵐.とりあえず日本語の表示と入力をできるようにする.

# 日本語フォント導入
# ディレクトリがないので作っておく
mkdir -p /usr/share/fonts/japanese/TrueType
# 後はここの通り => http://tmcosmos.org/linux/fedora/7/settings05.html

# 日本語入力環境
yum install scim-anthy

# /etc/sysconfig/i18n を編集
>>
LANG="ja_JP.UTF-8"
SUPPORTED="ja_JP.UTF-8:ja_JP:ja"
SYSFONT="latarcyrheb-sun16"
GTK_IM_MODULE=scim
QT_IM_MODULE=scim
XIM_PROGRAM="scim -d"
XMODIFIERS=@im=SCIM
<<


次にns-2のインストール.
とりあえずns-allinone-2.31.tar.gzを落としてきて解凍.

./install

さすがに一気にインストールはうまくいかないので個別に入れていく.最低限必要なのはtcl,tk,otcl,tclclそしてns-2であるが,ここではnamとxgraphも入れておく.管理が楽なのでyumで入りそうなものはyumで入れてしまう方針で.

# tkを入れるとtclも一緒に入る
yum install tk

# otclとtclclのコンパイルにXのヘッダーが必要
# configure時に"can't find X includes"と出てきたので↓
# GUIツールキットのqtを入れればXのヘッダーも入るかなー?
yum install qt # => やっぱり入った

# あとは普通にmakeしていけば良い
# tclcl
./configure
make

# otcl
./configure
make

# ns-2.31
./configure
make

# nam
./configure # => ok
make # => error: X11/Xmu/WinUtil.h: そのようなファイルやディレクトリはありません

# yumで見つかったのでinstall
yum install libXmu-devel

make => ok

# 最後に.bash_profileに追加
>>
PATH=$PATH:$HOME/bin
PATH=$PATH:$HOME/ns-allinone-2.31/otcl-1.13
PATH=$PATH:$HOME/ns-allinone-2.31/tclcl-1.19
PATH=$PATH:$HOME/ns-allinone-2.31/ns-2.31
PATH=$PATH:$HOME/ns-allinone-2.31/nam-1.13
PATH=$PATH:$HOME/ns-allinone-2.31/xgraph-12.1
PATH=$PATH:$HOME/ns-allinone-2.31/otcl-1.13
<<

# ns-2のテスト
cd ns-allinone-2.31/ns-2.31
.validate # => validate overall report: all tests passed

WinXPcygwinで動かしたときはワイヤレス関係のテストが三つほど失敗したが,Linux上で動かすと全部通るっぽい.なにはともあれXP無しで実験ができるようになった.さっさと動かしてグラフを出さなければっ.

VMware上で背景変えるくらいいいよね..