1.进入ns-2.35目录下common文件夹,修改packet.h
在201行添加
static const packet_t PT_GPSR = 73;
并把下面的73改为74,如图。
420行添加
name_[PT_GPSR]="gpsr";
如图:
2.进入ns-2.35目录下trace文件夹,修改emu-trace.cc
65行添加:
#include <gpsr/gpsr_packet.h>
1459行添加:
case PT_GPSR:
break;
如图:
3.进入ns-2.35目录下queue文件夹,修改priqueue.cc
95行添加:
case PT_GPSR:
如图:
4.进入ns-2.35目录下tcl/lib文件夹,修改ns-packet.tcl
141行添加:
GPSR
如图:
修改ns-lib.tcl
666行添加
GPSR {
set ragent [$self create-gpsr-agent $node]
}
如图:
812行添加:
Simulator instproc create-gpsr-agent { node } {
set ragent [new Agent/GPSR [$node id]]
$node set ragent_ $ragent
return $ragent
}
如图:
5.进入ns-2.35文件夹,修改Makefile
153行后加空格和“\”
154行添加:
gpsr/gpsr_neighbor.o \
gpsr/gpsr_sinklist.o \
gpsr/gpsr.o
如图:
6.代码修改完毕,进行代码编译
在ns-2.35文件夹下打开终端,依次输入以下命令:
cd common
touch packet.cc
cd ..
sudo make clean
sudo make