cygwin+ns-allinone-2.27+leach
1.准备
cygwin,获取网址:
ns-allinone-2.27,获取网址:
windows xp系统
2.安装
(1)安装cygwin,安装过程见:
(2)安装ns-allinone-2.27
安装之前需要打补丁,不然会出问题
打补丁:将ns-allinone-2.27拷贝到/home/xxx/下面,并解压(tar -zxvf ns-allinone-2.27)。将ns227-gcc34.patch拷贝到/home/xxx/下,并用命令进行打补丁(patch -p0 < ns227-gcc34.patch),完成后就可开始安装ns-allinone-2.27。
剩下的安装ns-allinone-2.27的过程跟安装其他ns一致
(3)修改.bashrc
加入以下
export NS_HOME=/home/xxx/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
(4)测试,可以找个简单的脚本测试一下,在此不介绍了,如果可以运行,则安装基本没问题了
(5)安装leach
将mit.tar.gz(leach.rar解压开就是)拷贝到ns-2.27下。用命令解压:tar -zxvf mit.tar.gz
在makefile中的DEFINE后面添加-DMIT_uAMPS;在INCLUDES = \后添加-I./mit/rca -I./mit/uAMPS
再找到OBJ_CC = \后面也跟了一大串,串的末尾是$(OBJ_STL),在它之上填上
mit/rca/energy.o mit/rca/rcagent.o \
mit/rca/rca-ll.o mit/rca/resource.o \
mac/mac-sensor-timers.o mac/mac-sensor.o \
mit/uAMPS/bsagent.o \
修改.bashrc文件,在最后加入以下内容:
export RCA_LIBRARY=`pwd`/ns-allinone-2.27/ns-2.27/mit/rca
export uAMPS_LIBRARY=`pwd`/ns-allinone-2.27/ns-2.27/mit/uAMPS
上面两行很重要,配置错误会造成无法运行
修改mac/wireless-phy.cc 文件,在文件开头添加下面宏定义:“#define min(a,b) (((a)>(b))?(b):(a))”,如下:
#define MAX(a,b) (((a)<(b))?(b):(a))
#define min(a,b) (((a)>(b))?(b):(a))
在命令行中 make clean,然后make
如果编译通过,执行ns-2.27下的./leach_test就可以运行得到结果。
安装成功后在\cygwin\home\***\ns-allinone-2.27\ns-2.27\mit\leach_sims目录下的 leach.err中会有下面的数据
INITIALIZE THE LIST xListHead
channel.cc:sendUp - Calc highestAntennaZ_ and distCST_
highestAntennaZ_ = 1.5, distCST_ = 222.8
SORTING LISTS ...DONE!
enjoy!!!
阅读(1693) | 评论(0) | 转发(0) |