1. 修改了scheduler的代码后,出现了一个 vector 越界的问题,如何调试?
首先想到的是使用eclipse单步调试(配置eclipse可以参考其他博客),但是因为使用了 “ lena->SetFadingModelAttribute ("TraceFilename", StringValue ("src/lte/model/fading-traces/fading_trace_EVA_60kmph.fad")); 所以在单步调试时,一直有一个kernel的错误,如下所示,提示是因为该文件打开的路径问题,尝试了改路径,但是没有改对。
"No source available for "__kernel_vsyscall() at 0xb7fdd424'
此路不通,则采用了两种办法,A- 修改脚本,不使用fadingmodel, 可以进行单步调试,定位到修改过的代码位置,可以排查一些bug 。
B-在代码中添加打印信息,通过输出打印信息,看程序的进行过程。
以pf-ff-mac-scheduler.cc 的代码为例, 语句 NS_LOG_INFO() 则为记录信息,如