ns3记录
最近在向ns3添加自己的模块时,需要用到boost::serialization的功能。所以就加入了相应的头文件。
随后编写相应的代码块(代码块的功能是能跑通的)。
编写完成后,就./waf configure ./build。
就在./waf build之后,系统报错
随后经过一番地查找资料,这玩意的意思好像是serialization的链接部分出问题了。
哎?就有点纳闷了,为啥有的boost库就可以直接用,有的还得再链接一下呢?又经过一番地查找资料,https://www.boost.org/doc/libs/1_51_0/more/getting_started/unix-variants.html#link-your-program-to-a-boost-library
中给出了说明:
正好我需要的序列化功能是要再额外操作一步的。首先我在ns3项目外创建了c++的文件,并且在里面使用了boost的序列化功能。随后一顿操作
编译成功并可正常运行了。ok!那就在ns3里面操作一下吧,很遗憾ns3里面是使用waf来进行编译的,我尝试了几种g++的操作,他都会提示我找不到以ns3为开头的头文件。。。头痛!那就只能再看看waf是怎么工作的了。
看了好长时间的https://waf.io/book/ 没看懂。。。
随后查找有没有人遇到过和我相同的情况。终于!!找到一篇文章https://www.dazhuanlan.com/2019/12/13/5df32daccc2a9/
根据里面的做法,我在相应模块下的wscript里加入了一段代码
然后./waf build成功!