0
点赞
收藏
分享

微信扫一扫

NS3 --- ns-3.36.1 --- assert failed. cond=

思考的鸿毛 2022-09-29 阅读 47

# 错误

[root@ztg ns-3.36.1]# ./ns3 run scratch-paper2-lte-wifi

create nodes
assert failed. cond="m_current >= delta", +20.799092640s 9 file=/opt/ns3/ns-allinone-3.36.1/ns-3.36.1/build/include/ns3/buffer.h, line=865
terminate called without an active exception
Command 'build/scratch/ns3.36.1-scratch-paper2-lte-wifi-debug' died with <Signals.SIGABRT: 6>.

# 解决方法:

gedit ./src/network/model/packet-metadata.cc

PacketMetadata::ItemIterator::Next (void)
{
//ztg
int delta;

//ztg
// item.current.Prev (m_buffer.GetSize () - (m_offset + smallItem.size));
//----------------------------------------------------------------------------------------------------
delta = m_buffer.GetSize () - (m_offset + smallItem.size);
// std::cout << "m_buffer.GetSize (): " << m_buffer.GetSize () << " m_offset: " << m_offset << " smallItem.size: " << smallItem.size <<std::endl;
// std::cout << "m_buffer.GetSize () - (m_offset + smallItem.size) delta: " << delta <<std::endl;
//m_buffer.GetSize (): 102 m_offset: 118 smallItem.size: 4
//m_buffer.GetSize () - (m_offset + smallItem.size) delta: 4294967276
if (delta > 0) item.current.Prev (delta);
else item.current.Prev (0);
//----------------------------------------------------------------------------------------------------
}


gedit build/include/ns3/buffer.h

void
Buffer::Iterator::Prev (uint32_t delta)
{

// std::cout << "m_current: " << m_current << " delta: " << delta <<std::endl;

NS_ASSERT (m_current >= delta);
m_current -= delta;
}


举报

相关推荐

ns3学习

eclipse调试NS3

A NetAnim example for ns3

Ubuntu下安装NS3

Ubuntu和ns3安装教程

ns3 Traffic Control Layer解读

ns3中事件调度机制

0 条评论