演示系统版本
演示系统的版本为:Ubuntu 20.04.4
|
|
下载bake工具
https://gitlab.com/nsnam/bake/-/blob/master/doc/documentation.txt
下载bake工具
|
|
配置环境变量
|
|
执行基础依赖检查
|
|
安装缺少的组件FNU C++、Make与CMake
|
|
再次检查依赖,全部通过
|
|
添加NS3模块与依赖检查
https://blog.csdn.net/smiling_sweety/article/details/115025518
https://blog.csdn.net/yylib/article/details/43585839
配置bake设置添加ns3模块,并检查该模块的依赖需求
|
|
观察到此处缺少pygraphviz、python3-dev、qt、setuptools,根据工具提示信息进行安装
|
|
注意在安装QT组件时,出现无法定位软件包的问题
因此将QT组件相关的安装命令更换为qt5-default
|
|
安装完成后,再次检查依赖均已安装
|
|
执行下载、编译、安装
方式一:继续使用bake
可使用该命令进行模块的下载、构建及安装
|
|
但由于该操作十分耗时,因此可以采用两步完成:下载、构建安装
|
|
下载过程会非常缓慢
下载完成后执行构建安装
|
|
方式二:使用build脚本
http://skypacer210.github.io/2014/12/26/building-ns-3-on-ubuntu/
https://blog.csdn.net/qq_19408097/article/details/104625197
ns3使用Waf工具进行源代码的编译(Waf是一个基于Python语言的开源编译系统),但Waf只能编译ns3主项目。对于首次安装,可采用ns3-allinone目录下的build.py脚本,该脚本可一次性编译ns3和其它辅助项目
从该网站下载NS3源码压缩包,解压文件夹后,包含build.py脚本
https://www.nsnam.org/releases/ns-3-35/
使用命令进行一次性编译,使用–enable-examples参数表示编译的同时,编译ns-3自带的网络模拟示例脚本
|
|
编译完成,其中modules built列出了已经编译的模块;modules not built部分是未编译的模块,这些模块需要第三方库的支持,可以在后续按需添加再编译
运行测试
ns3自带单元检测功能,可对程序的编译安装进行检验
|
|
运行ns3脚本需要Waf工具,需要注意的是:由于Waf工具仅支持在ns-3.35目录下执行,因此需要进入到ns-3.35目录下进行运行
|
|