【ns3】安装(包括无网安装)
文章目录
- 演示系统版本
- 下载bake工具
- 执行基础依赖检查
- 添加NS3模块与依赖检查
- 执行下载、编译、安装
- 方式一:继续使用bake
- 方式二:使用build脚本
- 运行测试
- 没网环境安装ns-3.43:
官网共提供三种方法进行安装,大部分教程用的方法是手动安装,即使用mercurial或者tarball。另一种方法是采用bake,bake是ns3自带的管理工具,能够完成依赖包检查、allinone包下载与编译的一些列操作,本笔记以bake方式进行ns3的安装
演示系统版本
演示系统的版本为:Ubuntu 20.04.6
uname -a
cat /proc/version
cat /etc/issue
下载bake工具
https://gitlab.com/nsnam/bake/-/blob/master/doc/documentation.txt
sudo apt install git
git clone https://gitlab.com/nsnam/bake
配置环境变量
export BAKE_HOME=pwd
/bake
export PATH= P A T H : PATH: PATH:BAKE_HOME
export PYTHONPATH= P Y T H O N P A T H : PYTHONPATH: PYTHONPATH:BAKE_HOME
执行基础依赖检查
cd bake/
./bake.py check
安装缺少的组件FNU C++、Make与CMake
sudo apt install g++
sudo apt install cmake
再次检查依赖,全部通过 ./bake.py check
添加NS3模块与依赖检查
https://blog.csdn.net/smiling_sweety/article/details/115025518
https://blog.csdn.net/yylib/article/details/43585839
配置bake设置添加ns3模块,并检查该模块的依赖需求
./bake.py configure -e ns-3.35
./bake.py show
观察到此处缺少pygraphviz、python3-dev、qt、setuptools,根据工具提示信息进行安装
sudo apt-get install python3-pygraphviz
sudo apt-get install python3-dev
sudo apt-get install qt5-dev-tools libqt5-dev
sudo apt-get install python3-setuptools
注意在安装QT组件时,出现无法定位软件包的问题
因此将QT组件相关的安装命令更换为qt5-default
安装完成后,再次检查依赖均已安装
./bake.py show
./bake.py check
执行下载、编译、安装
方式一:继续使用bake
可使用该命令进行模块的下载、构建及安装
./bake.py deploy
但由于该操作十分耗时,因此可以采用两步完成:下载、构建安装
<br>./bake.py download<br> ![]() |
下载过程会非常缓慢
下载完成后执行构建安装
./bake.py build
方式二:使用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自带的网络模拟示例脚本
sudo ./build.py --enable-examples
编译完成,其中modules built列出了已经编译的模块;modules not built部分是未编译的模块,这些模块需要第三方库的支持,可以在后续按需添加再编译
运行测试
sudo ./test.py
运行ns3脚本需要Waf工具(
waf
作为构建工具 , 用于编译、配置和管理项目 ),需要注意的是:由于Waf工具仅支持在ns-3.35目录下执行,因此需要进入到ns-3.35目录下进行运行
cd ns-3.35/
sudo ./waf --run hello-simulator
没网环境安装ns-3.43:
1、ns3.43软件包本地下载下来导入到服务器
2、在Ubuntu 18.04上安装ns-3.43需要满足以下条件:,建议使用gcc/g++ 8或更高版;本次我是用gcc9;
- Ubuntu 18.04默认安装gcc-7.3,需手动安装更高版本。
3、https://mirrors.tuna.tsinghua.edu.cn/ubuntu/pool/main/g/gcc-9/
清华园下载下面三个版本导入到服务器;