在新版本2.34上添加mp-olsr时出现编译错误(甲子彝新版本2.29)

Compilation error while adding mp-olsr on ns 2.34 (Jiazi YI ns 2.29)

本文关键字:新版本 错误 甲子 编译 添加 mp-olsr      更新时间:2023-10-16

我试图将mp-olsr(ns 2.29)添加到ns 2.34中,我在编译它时遇到了一些错误。

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

程序:

$ touch common/packet.cc
$ make

结果:

mpolsr/mpolsr。0: In function MPOLSR::MPOLSR(int)':
MPOLSR.cc:(.text+0x1457): undefined reference to
Agent::Agent(packet_t)'
mpolsr/mpolsr。0: In function MPOLSR::MPOLSR(int)':
MPOLSR.cc:(.text+0x16f1): undefined reference to
Agent::Agent(packet_t)'
Collect2: ld返回1退出状态
make: ** [ns] error 1

我还能错过什么?

在添加新协议之前,您需要将协议名称添加到common/packet.h文件中然后加上你的xxx。

你所做的是不正确的

为了解决我的错误,我在MPOLSR.cc中修改了以下内容:

来自:

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

To(所有内容在一行中):

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

我知道这听起来很傻,但是它解决了问题。