如何将 OSPF 修补程序应用于 ubuntu 14.04 上的 ns2 2.35



我已经在我的 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文件,将.patch文件复制到名为10-ospf4ns2.34-base.patchns-allinone-2.35文件夹中,转到终端中的目录,使用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

最新更新