原创 Windows下NS2的详细安装过程

2009-7-2 16:39 8903 14 17 分类: 通信
简单的说,NS-2是一个网络模拟器,所以经常被用到网络课的教学中。

NS-2是OpenSource的,最早的版本是在linux/unix下运行的,后来有了windows下用vc编译运行的版本,但从2.26以后就放弃了对vc的支持,所以现在装NS2只有两条路,要么装个linux,要么就在windows下装个cygwin,然后再在cygwin上装ns2.

为了一个ns2(完成安装后不过100M)而安装linux(RH9完全安装大概在5G左右)实在不值,所以我决定用cygwin
先去
http://www.cygwin.com/setup.exe
下载setup.exe,运行,得到这个界面:

点击查看原始大小图片

点下一步,出现这个界面:
点击查看原始大小图片
选择“Install from Internet”,当然,如果本地已经下载了你所需要的package,也可以选“Install from Local Directory”

接下来选择安装位置:
点击查看原始大小图片
可以自己选择一个目录安装。现在(10/13/05)的cygwin版本跟NTFS完全兼容,所以不用担心,可以放心的把它装在NTFS分区。至于Test File Type,建议最好设成unix,虽然我没试过用dos格式,但是鉴于OpenSource的软件原本都是linux/unix下的,所以最好还是用unix

继续下一步
点击查看原始大小图片
选择一个保存package的地方,我们要用到的package大小大概是60M。当然,如果选择的是Install From Local Directory,那么这一步就会变成“指定package所在的位置”

下一步
点击查看原始大小图片
指定代理服务器。教育网内的机器是没办法直接上国外网的,所以要指定代理。最该死的是它的 mirror list放在国外,所以即使你知道一个国内的ftp地址(可以下载package的地址,比如ftp://ftp.sjtu.edu.cn/cygwin),你也得指定代理服务器,要不然你就没办法获得mirror list,安装就进行不下去。清华校内的话,除实验室之外推荐使用代理,强烈建议不要直接连国外,要知道国际流量可是 1元/MB,安装一次就需要60RMB!

下一步
点击查看原始大小图片
选择镜像站点。cygwin有很多镜像站点(但是上面列的都是国外的),可以选择其中一个下载package。也可以自己指定一个站点。比如,如果要用ftp://ftp.sjtu.edu.cn/cygwin,可以在User URL中填这个地址,然后点add,就能将这个地址加到上面的镜像列表中,然后可以选择这个镜像进行安装。

下一步
点击查看原始大小图片
选择要安装的软件包。这里我只列出ns2需要的包,其中不包括安装程序默认安装的包:
gcc
gcc-g++
gnuplot
make
patch
perl
tar
X-startup-scripts
xorg-x11-base
xorg-x11-bin
xorg-x11-devel
xorg-x11-bin-dlls
xorg-x11-bin-lndir
xorg-x11-etc
xorg-x11-fenc
xorg-x11-fnts
xorg-x11-libs-data
xorg-x11-xwin
点右上角的view,使它旁边的状态显示为Full,你就能看到按字母顺序排序的package列表,在这些包前点鼠标,使它们处于非“Skip”的状态

下一步
点击查看原始大小图片
开始下载文件,准备安装。下载过程会比较慢,因为总文件有60多M,且分成很多小文件。如果是代理服务器,可能还会更慢,推荐早上开机安装,然后去上自习,估计中午就能下完了  :-P

下载完成后,系统会自动开始安装
点击查看原始大小图片
安装过程还是比较慢的,耐心等待就是了

安装完成
点击查看原始大小图片

让人高兴的提示


到这里,cygwin安装完成,这时桌面上应该出现了一个cygwin的图标,点击运行,就能看到cygwin的界面了


接下来就是安装ns2了
先去
http://www.isi.edu/nsnam/dist/ns-allinone-2.28.tar.gz
下载ns-allinone安装包。当然也可以选择下载单独的包,然后一个一个安装,不过真的不推荐,因为太麻烦了

下载完后,用winrar(我确定winzip能不能解压tar格式的文件,谁试试,告诉我一声)把里面的文件都解压到 cygwin安装目录下的 home目录的子目录下,比如在我这里就是  c:\cygwin\home\hct 。

启动cygwin,
cd /home/hct/ns-allinone-2.28
./install
安装过程就开始了。由于目录不一样,上面的命令可能不太一样。

安装过程是很漫长的,因为我们下载的是源文件,机器还得先编译,等吧……

安装完后会出现这个提示:
点击查看原始大小图片

这时还需要修改路径信息,把可执行文件的路径加到PATH环境变量中
打开 c:\cygwin\home\hct\.bashrc (当然,根据安装路径不同,这个文件所处的位置也不同),在文件末尾加入这些信息:

export NS_HOME=/home/hct/ns-allinone-2.28
export PATH=$NS_HOME/nam-1.11:$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.9:$NS_HOME/lib:$LD_LIBRARY_PATH
export TCL_LIBRARY=$NS_HOME/tcl8.4.5/library

.bashrc文件可以用记事本打开,不过最好用UE,因为它是unix格式的文本
加入后的文件像这样:
http://www.sinzy.net/Test/i1/20051013132448_1dwgbc45_.bashrc

现在我们的工作就基本完成了。
保存.bashrc,打开cygwin,运行 startxwin.bat
这时应该出现这样的窗口:
点击查看原始大小图片

运行
cd /home/hct/ns-allinone-2.28/ns-2.28/ns-tutorial/examples
ns example2.tcl

应该会出现这样的窗口:
点击查看原始大小图片
这就表示ns2安装圆满完成了!


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 就应该没问题了


    如果运行./configure结束后,最后一行提示"can't find X include",运行make后报错


   “xwd.c:87:29: X11/Xmu/WinUtil.h: No such file or directory
   make: *** [xwd.o] Error 1”


   那就只好去http://www.isi.edu/nsnam/dist/binary/下一个nam-1.0alla-win32.exe,然后把文件名改为nam.exe,复制到C:\cygwin\home\hct\ns-allinone-2.28\bin下了。

    如果gcc版本不是3.4.x,那就不知道是什么问题了,不过可以肯定是编译出了错,所以换个nam版本试试吧


References:
http://x.cygwin.com/docs/ug/setup-cygwin-x-installing.html
http://140.116.72.80/~smallko/ns2/setup.htm

文章评论3条评论)

登录后参与讨论

用户377235 2015-1-24 16:29

Cygwin安装进度条一动不动,是本来就这样还是其他问题

用户377235 2012-5-3 16:19

WIN7 64位的系统能安装NS—2不?若能又该如何安装?谢谢!

用户377235 2012-3-25 18:02

我将cygwin安装在D盘下,为什么在cygwin下安装ns2时总是提示“No such file or directory”,请问应该怎么输入安装命令?谢谢。

相关推荐阅读
用户1362633 2013-10-22 11:00
LPC3250的启动过程
1.bootstrap   复位后,LPC3250从内部ROM开始执行。内置的16KB ROM中包含有一段启动程序,称为bootstrap,它将代码从UART5、SSP0(SPI模式)、E...
用户1362633 2013-07-01 16:17
初识TQ2440开发板
         刚拿到开发板,有点儿无从下手。查看光盘资料,按照《裸奔三部曲》折腾,一开始就遇到了问题,不知道如何将原厂程序烧写进开发板。         根据书里的说明,首先安装了光盘里“...
用户1362633 2011-09-08 16:45
弄懂SPI接口
        SPI(Serial Peripheral Interface,串行外设接口)是Motorola公司提出的一种同步串行数据传输标准,在很多器件中被广泛应用。         1...
用户1362633 2011-08-10 16:37
MSP430F5418使用总结
        到目前为止,已工作一月有余。培训的时候领导就说,硬件工程师一定要清楚自己的定位,我们并不只是设计一下电路,画画原理图和PCB就可以的,硬件相关的驱动程序也是要由我们来完成的,这也是...
用户1362633 2010-08-16 10:24
LPC2138串口中断总结
      LPC2138的串口带有16字节的接收和发送FIFO,并且接收FIFO的触发点可设为1,4,8,14字节。            1)接收      当接收到的字节数达到设置的触发点(通过...
我要评论
3
14
关闭 站长推荐上一条 /2 下一条