如何在 ubuntu 14.04 上将 OSPF 补丁应用于 ns2 2.35

How to apply the OSPF patch to ns2 2.35 on ubuntu 14.04

我在 ubuntu 上使用 ns2nam 已经很长时间了。现在我必须对其应用补丁 (OSPF)。我一直在寻找如何在 linux 中应用补丁(因为我是新手),我得到的只是:

1) $ tar xvf ns-allinone-2.35.tar.gz

2) $ cd ns-allinone-2.35/

3) $ ln -s ns-2.35/ ns-2.34

... Then the patch will work, except for one line. (commom/packet.h).

4) $ patch -p0 < 10-ospf4ns2.34-base.patch

http://sourceforge.net/projects/ospf4ns/

5) Replace commom/packet.h with the attached "packet.h" : Edited by hand.

6) export CC=gcc44 CXX=g++44 && ./install

我取消了tar编辑了tar文件,复制了.patch文件到ns-allinone-2.35文件夹中名为10-ospf4ns2.34-base.patch的文件夹,进入目录终端,使用 ln -s ns-2.35/ ns-2.34,然后使用行 4 进行修补。之后我收到这些消息:

The next patch would create the file ns-2.34/classifier/classifier-mtopology.cc,
which already exists!  Assume -R? [n] y
patching file ns-2.34/classifier/classifier-mtopology.cc
The next patch would create the file ns-2.34/classifier/classifier-mtopology.h,
which already exists!  Assume -R? [n] y
patching file ns-2.34/classifier/classifier-mtopology.h
can't find file to patch at input line 92
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|--- ns-2.34.old/common/agent.cc    2009-06-14 18:35:45.000000000 +0100
|+++ ns-2.34/common/agent.cc    2010-02-26 23:34:33.161063590 +0000
--------------------------
File to patch:

这之后我不知道该怎么办了。我应该修补什么文件? ns-2.34中没有classifier-mtopology.h。 然后,我应该用指定的新 packet.h 替换哪个 packet.h?因为有好几个common个文件夹。任何帮助将不胜感激,因为我是 linux.

的新手

看起来您之前已经(至少部分)应用了补丁,并且您不在正确的目录中。

重新开始,也可以通过以下指令避免符号链接:

  1. 解压 ns-allinone-2。35.tar.gz 在一个新目录中。

  2. cd ns-allinone-2.35/ns-2.35

  3. 应用补丁:

    补丁-p1 < 10-ospf4ns2.34-base.patch