我在ubuntu上使用ns2
和nam
很长一段时间了。现在我必须应用补丁(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
文件复制到名为ns-allinone-2.35
的{{1}}文件夹中,转到终端中的目录,使用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:
中没有classifier-mtopology.h
。
在那之后,我应该用指定的新ns-2.34
替换packet.h
?因为有几个packet.h
个文件夹。任何帮助都会非常感激,因为我是linux的新手。
答案 0 :(得分:1)
看起来您之前(至少部分地)已经应用了补丁,并且您不在正确的目录中。
再次启动,您也可以按照以下说明避开符号链接:
在新目录中提取ns-allinone-2.35.tar.gz。
cd ns-allinone-2.35 / ns-2.35
应用补丁:
patch -p1&lt; 10 ospf4ns2.34-base.patch