NS是在Unix系统上开发的,因此FreeBSD、Linux、SunOS、等Unix和类Unix系统是安装NS的最佳平台,当然NS也可以安装并运行在Windows平台上。在NS上运行一般的模拟只需要普通的计算机即可,选择尽可能快读的CPU对于提高NS的模拟速度是很关键的,普通场景的模拟并不需要消耗很多内存,但对特别复杂的场景进行模拟可能需要消耗大量的内存(比如1GB的内存)。
NS的运行需要许多软件包的支持,例如Tcl/Tk、otcl、TclCL等。NS软件包中还包含一些相关工具,例如nam、xgraph等。因此安装NS就有两种方式:一种是手工依次安装各个软件包;另一种是安装NS的allinone包,一次性地把所有软件包安装到系统中。如果没有什么特殊的需求,推荐大家使用allinone的方式,可以省去很多麻烦。
下面将以2.35版本为例介绍NS在Fedora下的安装方法。
1 下载ns-allinone-2.35.tar.gz。
2 假定当前用户为nSUSEr,当前目录为/home/nsuser/Documents/。使用su命令切换成root用户。
3 用tar命令解压缩ns-allinone-2.35.tar.gz,具体做法为:
命令:tar -xzvf ns-allinone-2.35.tar.gz。
生成了ns-allinone-2.35文件夹。
4 将ns-allinone-2.35文件夹移动到/usr/local/路径下,具体做法为:
命令:mv ns-allinone-2.35 /usr/local/。
5 进入/usr/local/ns-allinone-2.35路径下,具体做法为:
命令:cd /usr/local/ ns-allinone-2.35。
6 执行命令:./install。
出现致命错误fatal error: X11/Xlib.h: No such file or directory。
7 安装libX11-devel.i686,具体做法为:
命令:yum install libX11-devel.i686。(此时需要联网)
出现提示后,输入y确认即可。
8 继续执行命令:./install。
出现错误:can't find X includes。
9 安装libXt-devel.i686,具体做法为:
命令:yum install libXt-devel.i686。(此时需要联网)
出现提示后,输入y确认即可。
10 继续执行命令:./install。
出现错误: make g++:命令为找到
tclcl-1.20 make failed
解决办法:安装g++
命令:yum install gcc-c++
11 继续执行命令:./install。
之后NS开始自动安装,如果没有出错的话,NS的安装就算成功了,安装结束后的画面如下。
12 按要求设置环境变量,具体做法为:
vi /etc/bashrc。
然后在文件末尾添加命令:
export
PATH="$PATH:/usr/local/ns-allinone-2.35/bin:/usr/local/ns-allinone
-2.35/tcl8.5.10/unix:/usr/local/ns-allinone-2.35/tk8.5.10/unix"
export
PATH="$PATH:/usr/local/ns-allinone-2.35/otcl-1.14:/usr/local/ns-allinone-2.35/lib"
export
LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/usr/local/ns-allinone-2.35/tcl8.5.10/library"
保存并退出。
13 退出终端,再次进入,输入ns命令,可验证是否成功。
在终端直接输入:ns
若出现“%”,则表明安装成功
14 运行自带例程,再次验证ns安装是否成功
命令:ns /tmp/ns-allinone-2.35/ns-2.35/tcl/ex/simple.tcl,
(其中/tmp/ns-allinone-2.35 为ns2的安装目录)
出现错误:
ns:finish:couldn't execute"name":no such file or directory while executing
解决办法:编译nam生产可执行文件
步骤:1)进入ns_home/nam-1.15(其中ns_home为ns的安装路径)
2)输入命令:make 结果显示错误
出现错误:aXwd:c:87:29:错误:X11/Xmu/WinUtill.h:NoSuch file or direcbory
make:****[xwd.o]错误
解决办法:未安装xmu,即需安装xmu
(1)命令:yum install libXmu-devel.i686(注意:X大写)
(2)在终端继续输入命令:make进行编译
完成编译后,在ns_home/nam-1.15目录下生产了可执行文件nam,将其复制
到ns_home/bin目录下
命令:cp nam /ns_home/nam-1.15 /ns_home/bin
15 再次运行自带例程序,验证
命令:ns /tmp/ns-allinone-2.35/ns-2.35/tcl/ex/simple.tcl
运行成功,如图所示: