2013-04-09 34 views
0

我試圖在ns 2.34中添加mp-olsr(ns 2.29),並在編譯時收到一些錯誤。在ns 2.34上添加mp-olsr時出現編譯錯誤

源代碼(甲子YI):http://www.jiaziyi.com/index.php/research-projects/mp-olsr

步驟:

$觸摸公共/ packet.cc
$使

結果:

mpolsr /MPOLSR.o:功能MPOLSR::MPOLSR(int)':
MPOLSR.cc:(.text+0x1457): undefined reference to
代理::代理(packet_t) '
mpolsr/MPOLSR.o:在功能MPOLSR::MPOLSR(int)':
MPOLSR.cc:(.text+0x16f1): undefined reference to
代理::代理(packet_t)'
collect2:LD返回1個退出狀態
化妝:** [NS] ERRO 1

我可能錯過了什麼?

回答

0

爲了解決我的錯誤我修改MPOLSR.cc如下:

來源:

MPOLSR::MPOLSR(nsaddr_t id) : Agent(PT_MPOLSR),
hello_timer_(this),
tc_timer_(this),
mid_timer_(this) {

要(一切在一條線上):

MPOLSR::MPOLSR(nsaddr_t id) : Agent(PT_MPOLSR), hello_timer_(this),tc_timer_(this), mid_timer_(this) {

我知道這聽起來很傻,但它解決了這個問題。

0

前添加你需要添加協議名稱爲普通/ packet.h文件 後添加xxx.o \成比的Makefile中輸入您的終端窗口中進行命令的新協議..

你什麼所做的是不正確的。

+0

我已經這樣做了。我修改了packet.h和所有需要修改的地方,然後我添加了make xxx.o \ – Flaviops 2013-04-10 11:54:27

+0

錯誤collect2:ld返回1退出狀態表示在你的C++代碼中沒有錯誤。錯誤是在你的配置中只有.. – 2013-04-10 12:01:57

+0

我在ns2.31中成功配置了上述包... – 2013-04-10 12:04:15