windows下cygwin+ns227+leach安装与总结.docx

上传人:b****3 文档编号:4470280 上传时间:2022-12-01 格式:DOCX 页数:19 大小:868.40KB
下载 相关 举报
windows下cygwin+ns227+leach安装与总结.docx_第1页
第1页 / 共19页
windows下cygwin+ns227+leach安装与总结.docx_第2页
第2页 / 共19页
windows下cygwin+ns227+leach安装与总结.docx_第3页
第3页 / 共19页
windows下cygwin+ns227+leach安装与总结.docx_第4页
第4页 / 共19页
windows下cygwin+ns227+leach安装与总结.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

windows下cygwin+ns227+leach安装与总结.docx

《windows下cygwin+ns227+leach安装与总结.docx》由会员分享,可在线阅读,更多相关《windows下cygwin+ns227+leach安装与总结.docx(19页珍藏版)》请在冰豆网上搜索。

windows下cygwin+ns227+leach安装与总结.docx

windows下cygwin+ns227+leach安装与总结

windows下cygwin+ns2.27+leach安装与总结

首先向大家提供两个网页,是专门教安装的,大家可以作为参考,一下的步骤也是来自这上面

http:

//140.116.72.80/~smallko/ns2/setup_en.htm(英文)

http:

//140.116.72.80/%7Esmallko/ns2/setup.htm(中文)

【以下图片部分来自互联网】

这里提醒大家一下,你的电脑里需要有这样的一些东西,VC或者VC++,因为ns2是在VC的环境下编写的,因此没有这个,ns2会不好使(有人说只要把gcc升级了就可以,但我不懂这个地方,还是按的vc++);另外需要按一个代码编辑器,我用的是UltraEdit,建议你在安装之前把这写都按好,一面之后出问题!

现在开始:

一、安装cygwin

这是一个虚拟平台,本身ns2实在linux下开发的,但由于很多人对linux不熟悉,因此需要装cygwin来模拟linux这个环境,但就是因为不是真正的linux,使得安装会有问题。

首先下载cygwin,下载地址:

,点击InstallorUpdatenow(usingsetup.exe)。

下载完后,执行setup.exe

点下一步

这里面两个页面给的选项不一样,我选的第一个,下一步

 这里可以选择安装目录,建议大家使用默认的C:

\,其他两项也用默认值即可,下一步

可以自己选择下载cygwin所需要的文档目录,我也是放在C盘下了,这个好像用不着,只要你知道在哪就可以,下一步

选择网络连接方式。

第一种是直接连接,第二种使用IE5的设定,第三种使用HTTP/FTPProxy的方式。

网上建议学校学生使用第三种,我也在学校,但用第一种,可能国内和台湾的学校不一样吧。

选择一个下载路径,例子上的这个学校我以前试过,挺快,但后来这个就没有了,其他地址曾经有一个网站都介绍过是什么地方,我不记得了,大家可以试试,好像结尾是tw(台湾的网站),都挺快的,你试一下如果速度不快就退到上一步重新选择,不定哪个就贼快!

下一步

这个地方有点麻烦,对于刚开始的可能不太明白,我尽量讲清楚。

注意看右上红框的地方。

先点右上角的View,使得Category变成Full。

左下我也用红框圈出来了,这个图片上面没有,正常一半咱们用的在这个地方有一个选项,前面是一个可选的对号,好像是隐藏什么东西,我没注意看,把这个对号勾掉,在最后一栏Package就出来要选的东西了,否则下一项很多人会找不到在哪,我就犯过这个错误。

安装leach协议需要选12项,XFree86-base、XFree86-bin、XFree86-prog、XFree86-lib、XFree86-etc、X-Start-Scripts、make、patch、perl、gcc、gcc-g++、gawk、gnuplot、tar和gzip。

(这里新加了一个X-Start-Scripts,由于版本更新的问题,如果不加入这个套件,后面的example无法运行。

可能做其他的这个地方选择的会有不一样的,应该依情况而定。

这些东西就在Package下面对应的,例如要选择XFree86-base,就点它前面对应的Skip,使Skip变成4.3.0-11。

这里说一下,当时我按的时候,一个高人建议我把带gcc-的全按上,我也这样做了,反正没出什么毛病,如果大家怕有意外可以选上。

还有人说可以把所有的选项都选上,直接在最上面的ALL选择状态安装,这个我不推荐,因为要是全按,在你网络保持连通的情况下估计一天都够呛,如果中途掉线,前功尽弃!

下一步

正在安装,请等待,如果你只选了11项,大概20分钟到半小时,如果你全选了,真佩服你的耐心!

 安装好以后,默认两个对号都选上,完成,cygwin安装完毕。

这个过程其实挺简单的,但我最开始在按这个的时候就花了能有两三天的时间,关键的是那11项不知道去哪找,主要是那个隐藏项的对号没勾掉,这里大家要注意!

二、安装ns2

我用的是ns2.27版本的,现在最高好像到了2.32版本,之前由于2.27没安装成功,安了2.32,确实安成功了,但leach协议好像都是2.27版本的,在ns2.30版本以上安装好像有问题,所以推荐大家,如果你要按leach协议的话,建议你安ns2.27,而2.282.29好像也可以,有人试验成功过,2.30版本以上的请不要安装了,如果你就想试试,那我是完全支持的!

双击桌面上的cygwin图标,打开,

出现一下类似DOS的一个窗口

第一次执行的时候,会根据使用者和电脑名称,在cygwin的home目录下产生一个使用者的文件夹,并放入环境变量等相关文档(.bashrc、.bashrc_profile和.inputrc)。

以我自己的为例,我是在windowsXP系统下,用户名为Administrator,则cygwin会在家目录下建立Administrator目录(/home/Administrator),对应路径为C:

\cygwin\home\Administrator

这张图片是我自己电脑里的,大家可以看一下

下载ns2,地址:

http:

//www.isi.edu/nsnam/dist/ns-allinone-2.27.tar.gz

在这里大家要看到,下载好的是一个类似压缩文件的,这里一定不要用右键的解压缩,而是要用命令来解压,这个文件要放在C:

\cygwin\home\Administrator目录下,这个是我的例子,大家看上图,就看到了,那个压缩的文件就是,放到这里就可以了。

这个地方有一个问题,因为我安装的是2.27版本的,在后来的安装时候发现有错误,后来才想起需要打一个补丁(2.28以上版本没有这个问题),ns227-gcc34.patch,下载地址http:

//www.ececs.uc.edu/~cdmc/ucbt/src/ns227-gcc34.patch。

下面我们要使用命令解压,在刚才的cygwin窗口里,输入

tarxvfzns-allinone-2.27.tar.gz,回车

看到一堆东西在走,走完之后跳出到输入命令的状态,就说明你解压完了,而且在C:

\cygwin\home\Administrator下面多了一个解压好的文件夹,这个地方要把刚才打的补丁设置一下路径,输入命令patch-p0

 然后要进入ns-allinone-2.27目录下,这里使用的命令和DOS的命令一样,在cygwin中输入

cdns-allinone-2.27回车

发现那行绿字后面多了一行黄字,就是说明你现在在ns-allinone-2.27目录下,然后在这个目录下安装ns2,还是在cygwin中输入命令

./install回车

等待,有一堆东西在执行,如下图

这里会有一个选择的东西,要选择y,回车,继续安装,这个要等很长时间,不到一个小时,如果安装顺利的话,安装好的会出现下图这个样子,就说明安装成功了

 安装完之后先别急着高兴,这里需要设置环境参数,本人在这个地方由于理解错误,造成了后段进行停滞,由高人指点,才发现自己有多笨,这里一定要和菜菜鸟们说清楚,以免发生类似我的笑话。

参考网页上面都说,请编辑家目录下的.bashrc,把ns2相关的路径加入PATH中

exportNS_HOME=‘pwd’/ns-allinone-2.27

exportPATH=$NS_HOME/tcl8.4.5/unix:

$NS_HOME/tk8.4.5/unix:

$NS_HOME/bin:

$PATH

exportLD_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

exportTCL_LIBRARY=$NS_HOME/tcl8.4.5/library

【第一句的‘pwd’要换成自己的对应目录,如我的是exportNS_HOME=/home/Administrator/ns-allinone-2.27,这个要根据自己的改】

就是在这个设置环境变量的时候,我开始以为是在cygwin中输入这些命令,到最后才知道,其实应该是用代码编辑器打开你的.bashrc文件,然后把这4句话写到.bashrc文件的最后一行,然后保存,这里大家要自己一个一个自己打,因为你复制粘贴的可能会多一个或少一个空格,好像都有影响,我给大家看一下

其实应该是这个样子的,这四句就是这上面从111-114行的东西,而115.116行的命令在后面会遇到,大家到这里先写入这4句,然后保存。

这样基本就安装正确了,然后下面可以检查一下ns2是否安装正确

参考网页上说有一个检查方法,但是时间很长,我这里不推荐,我推荐那个出现例子的方法。

在cygwin中的ns-allinone-2.27目录下,如果你不知道怎么进入这个目录下,就先把cygwin窗口关掉,然后再打开,然后还是cdns-allinone-2.27回车,这个地方由于之后的版本改进问题,使得nam.exe不能自动编译出来,新手找一些老手要以前编译好的nam.exe文件放到C:

\cygwin\home\Administrator\ns-allinone-2.27\nam-1.10文件夹下,nam.exe的快捷文件放到C:

\cygwin\home\Administrator\ns-allinone-2.27\bin文件夹下,再看一下你的C:

\cygwin\home\Administrator\ns-allinone-2.27\ns-2.27下有没有ns.exe,如果没有还是需要找一个放过去。

否则后面会很麻烦,之后输入startxwin.bat回车,稍等,出来一个Xwin窗口在这个窗口中输入

cdns-allinone-2.27/ns-2.27/ns-tutorial/examples回车,然后输入nsexample2.tcl回车

之后会跳出一个例子

然后按右图上面的播放键,会看到有运行的过程

这样就说明你安好了,挺有成就感的吧,已经2/3了。

三、安装mit

这步也就是安装leach协议了,下载leach2.27,地址:

将mit.tar.gz放在ns-allinone-2.27/ns-2.27目录下

这个图是我的,一样的,这种压缩文件,不要右键解压,还是用命令解压的。

打开cygwin,进入到ns-allinone-2.27/ns-2.27目录下,就是如果你是重新打开的cygwin,那么输入命令cdns-allinone-2.27/ns-2.27回车,便进入到ns-allinone-2.27/ns-2.27目录下了。

下面解压mit.tar.gz。

输入命令gunzipmit.tar.gz回车

       tar-xvfmit.tar回车

等待一会,又是一堆东西在执行,等跳出来以后,需要修改ns-allinone-2.27/ns-2.27目录下的makefile文件,这里还是要注意,是用代码编辑器打开makefile文件,这个文件在C:

\cygwin\home\Administrator\ns-allinone-2.27\ns-2.27里

添加-DMIT_uAMPS到DEFINE列表中;

 添加-I./mit/rca-I./mit/uAMPS到INCLUDES列表中;

 将下列内容添加到gaf/gaf.o\这一行之前

 mit/rca/energy.omit/rca/rcagent.o\

 mit/rca/rca-ll.omit/rca/resource.o\

 mac/mac-sensor-timers.omac/mac-sensor.omit/uAMPS/bsagent.o\

这里给个参考

或者大家看我的图

DEFINE和INCLUDES在60和62行

这行是60行DEFINE的结尾修改完的

这个是62行INCLUDES后面修改完的,大家也是自己打,不要复制粘贴

OBJ_CC=\这行在149,里面找到gaf/gaf.o\这句,在它的前面打mit/rca/energy.omit/rca/rcagent.o\

 mit/rca/rca-ll.omit/rca/resource.o\

 mac/mac-sensor-timers.omac/mac-sensor.omit/uAMPS/bsagent.o\

也就是202-204行,下面是我的例子

这里做完之后,如果是新朋友的话,我给你一个建议,因为新的NS2有一些问题,我再后来安装的时候出现过,经过一番努力终于成功,你检查一下自己的Makefile文件第76行,是否有-lintl\这个出现,如果有,把这一行去掉,否则后面编译不过去,ns.exe文件找不到,很麻烦的。

这些修改好之后保存,回到cygwin窗口,输入makeclean清除以前的编译结果,等待一会,执行完之后,再输入nohupmake2>error.log>make.log&进行编译,其实这里直接输入make也是一样的,前者是把输出结果放到make.log文件里,后者是直接显示结果,还是用make比较好,有错误可以及时发现,这里可能会出现错误,按照错误提示对应的文件和对应的行,自己修改,没有错误就可以编译成功。

修改test文件,和刚才的makefile文件同目录

还是用代码编辑器打开这个文件,修改的结果是

#!

/bin/bash

  cdtcl/ex

  nswireless-demo-csci694.tcl

  sleep2

  cd../../

  ./leach_test

好像是第6行的位置串了一下,反正这是最后结果

添加leach协议运行所需的环境参数,还是这个文件夹里,找到leach_test文件

用代码编辑器打开它,在nstcl/ex/wireless.tcl \前增加以下语句

  RCA_LIBRARY=mit/rca

  exportRCA_LIBRARY

  uAMPS_LIBRARY=mit/uAMPS

  exportuAMPS_LIBRARY

37-40句,见图

之后保存,然后向上返回两级目录,到C:

\cygwin\home\Administrator下,找到最开始的.bashrc,添加环境参数

用代码编辑器打开它,在最后面加入

exportRCA_LIBRARY=$(NS的安装目录)/mit/rca

exportuAMPS_LIBRARY=$(NS的安装目录)//mit/uAMPS

我的就是输入

exportRCA_LIBRARY=$home/Administrator/ns-allinone-2.27/ns-2.27/mit/rca

exportuAMPS_LIBRARY=$home/Administrator/ns-allinone-2.27/ns-2.27/mit/uAMPS

然后保存,这样leach基本就是按好了

在cygwin中,进入到ns-2.27目录下(会进了吧),输入./test回车,会看到运行结果。

这里还有一点,新朋友注意,以前的时候呢直接./test回车是下面这个结果,

看到没,如果你出现这个就是说明你成功了,读读上面的内容,反正我是不明白什么意思,还需继续学习。

但如果你出现的是这样的画面

 

其实你也不用担心的,你的协议是可以正常运行的,这里你只需要按照提示加七个初始值,在tcl/lib下的ns_default.tcl文件第692行加入7个初始值,具体的初始值应该对照C:

\cygwin\home\Administrator\ns-allinone-2.27\ns-2.27\mac下的wireless-phy.cc里面的输入,看一下效果

 

这样才能出现和之前一样的效果。

这个地方有一点是之前忽略的,这里做好之后需要makeclean,然后make,make之后会有错误发生,按照提示修改两个地方文件mac中的wireless-phy.cc出现一个错误,可以参看编译过程中的错误提示,然后找到相对应的文件,把“min”改成“MIN”(需要修改两处320行和321行),然后再在命令行中输入make,这里make之后还是有错误,起先以为这个错误是没办法改掉,只要不影响什么就可以,后来一位网友说把C:

\cygwin\ns-allinone-2.27\ns-2.27\indep-utils\webtrace-conv\dec\my-endian.h中

#ifndef_ENDIAN_H_

#define_ENDIAN_H_

改为

#ifndef_MY_ENDIAN_H_

#define_MY_ENDIAN_H_

就可以了,之后再./leach_test,这才是运行了leach协议。

看一下mit/leach_sims文件夹里的东西,leach.out是输出数据。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高中教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1