80后程序员
分类: 系统运维
2010-06-10 10:47:00
声明:本文为转载
在win9x / 2000/ xp 环境下安裝ns2网络模拟软件
(这是柯老师文章的简体化版本, 原出处:)
参考了官方英文版, 网址为:
(a) 安裝cygwin
网站 ,点击Install or Update now (using setup.exe)。
运行setup.exe。
按下一步。
选择Install from Internet,并按下一步。
在Root Directory中,可以选择安裝的目录,不过在这里建议大家使用默认路徑 c:\cygwin。 其它另外两个选项也使用默认值即可。按下一步。
在Local Package Directory中,是让使用者设定cygwin所需要档案的目录。 使用者可以自行更改路径或者使用与安裝程序setup相同的路径(默认值)。按下一步。
选择网络连接的方式。第一种是直接连接,第二种是使用IE5设定,第三种是使用HTTP/FTP Proxy的方式。 若使用者是学校的學生,建议采用第三种方式,可以加快下载的速度。 以笔者在成功大學下载程式,设定如下。
按下一步。
选择下载的地点(镜像站点),在这里我们选择从上海交通大学的FTP站下载。按下一步。
选择要安裝的软件套件。在这里可以先点选View,使得旁边的Category变成Full,这样就可以对于子选项做选择。
要选择的有XFree86-base、 XFree86-bin、XFree86-prog、XFree86-lib、XFree86-etc、make、patch、perl、gcc、gcc-g++、gawk、gnuplot、tar和gzip。以下图为例,点选XFree86-base,可以使得状态从new改变成4.3.0-11。
按下一步。
开始下载並安裝。
完成后,会询问使用者是否想要在桌面和开始菜单中生成图标。点击完成以结束程序的安装。若是还需安裝其它的套件,可以重新执行行setup安裝即可。 (额外添加即可, 不必全部重装)
(b) 安裝ns2
双击桌面上的cygwin图标。
第一次执行的時候,会根据目前电脑用户和电脑名称等信息,在 cygwin的home的目录下产生一個用户资料夹,并放入环境变量设定的相关文件(.bashrc、.bashrc_profile和.inputrc)。以笔者为例,笔者在 windows 2000操作系统下的用户名称为smallko,而电脑的名称为ibm240,则cygwin为smallko在home的目录下建立一个主目录(/home/smallko),其对应于C盘的路径为c:\cygwin\home\smallko; 而输入命令提示符则为~ $。
接下來到,下在ns2的安装文件,并存放到自己的主目录下。
所下载的Allinone package包括以下组件:
· TCL release 8.4.5 (required component)
· TK release 8.4.5 (required component)
· Otcl release 1.8 (required component)
· TclCL release 1.15 (required component)
· Ns release 2.27 (required component)
· Nam release 1.10 (optional component)
· Xgraph version 12.1 (optional component)
· CWeb (optional component)
· SGB (optional component, builds sgblib for all UNIX type platforms)
· Gt-itm (optional component)
· Zlib version 1.1.4 (optional, but required when Nam is used)
使用tar xvfz ns-allinone-2.27.tar.gz解压缩该压缩文件。
进入ns-allinone-2.27目录,并开始安裝ns2,./install命令.
在安装的中,由于我們沒有安裝diff,所以安裝程式会问用户要不要继续,选择y以继续安裝。
在安裝的过程中,需要花一些时间,所以请用户耐心等待安裝完成。
完成图。
完成ns2的并以后,需要设定环境变量。
请编辑主目录下的.bashrc,把ns2相关的路径加入PATH中。()
export NS_HOME=`pwd`/ns-allinone-2.27
export PATH=$NS_HOME/tcl8.4.5/unix:$NS_HOME/tk8.4.5/unix:$NS_HOME/bin:$PATH
export LD_LIBRARY_PATH=$NS_HOME/tcl8.4.5/unix:$NS_HOME/tk8.4.5/unix:$NS_HOME/otcl-1.8:$NS_HOME/lib:$LD_LIBRARY_PATH
export TCL_LIBRARY=$NS_HOME/tcl8.4.5/library
若是用户想要验证ns2安裝是否成功,可以使用cd ns-allinone-2.27/ns-2.27 ; ./validate
不过会占用比较长的时间,需要耐心等待。
在这一小节结束之前,笔者以一个范例来检验ns和nam。輸入命令startxwin.bat。会产生一个新的窗口,在此命令窗口中輸入
cd ns-allinone-2.27/ns-2.27/ns-tutorial/examples
ns example2.tcl
模拟结束后,ns会去执行nam。
按一下nam的执行按钮。就可以看到模拟过程的动画演示。
若是不能執行,请先参考一下。
Problems & Solutions
P: 运行 startxwin.bat 时提示“No Such File or Directory”
S: 可能是没有安装X-Startup-Scripts,重新运行setup.exe,然后选择安装就行了
也可能是环境变量没有设置好,按上面的设置再检查一遍,注意要把 hct 改成你相应的名字
另外,应该运行 startxwin.bat ,不能只打 startxwin
P: 运行 ns examples2.tcl 时提示" no such file or directory"
S: 如果是找不到 examples2.tcl 那就是你打 cd /home/hct/ns-allinone-2.28/ns-2.28/ns-tutorial/examples 的时候出了错
如果是找不到ns,那就是环境变量没设置好
P: 运行 ns examples2.tcl 时提示“nam: no such file or directory”
S: 看看你的 /home/hct/ns-allinone-2.28/nam-1.11 目录下有没有 nam.exe 文件,有的话就是你的环境变量设置错了,注意要把 nam-1.11 这个目录加到PATH中
如果没有nam.exe,那就是编译nam时出错了。运行 gcc -dumpversion 看看你的gcc版本,如果是3.4.x,那就好办了。找到 nam-1.11/agent.h ,把它的第73行中的NULL改成0,然后回到nam-1.11目录,运行 ./configure 然后运行 make,等运行完毕,再试试 ns example2.tcl 就应该没问题了
如果gcc版本不是3.4.x,那就不知道是什么问题了,不过可以肯定是编译出了错,所以换个nam版本试试吧