MMP的,入坑NS3了,LTE是什么鬼!!!

ubantu安装NS3解决依赖环境

一堆安装包需要安装,试了N多次(CentOS没安装明白,转而ubantu)。利用脚本进行按装。

貌似得先对本机软件进行升级,从官方文档获取安装步骤,传送门:https://www.nsnam.org/wiki/Installation,官网部分安装步骤貌似不能通过(仅限本机),在安装脚本中进行说明

不得不说这安装环境的过程不是一般的长

zyb@virtual-machine:~$ uname -a
Linux virtual-machine 4.15.0-29-generic #31~16.04.1-Ubuntu SMP Wed Jul 18 08:54:04 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
zyb@virtual-machine:~$ sudo apt-get upgrade
zyb@virtual-machine:~$ vim ns3_install_environment.sh
sudo apt-get install gcc g++ python python-dev -y
sudo apt-get install mercurial python-setuptools git -y
# 官方安装qt5-default貌似当时死活安装不上,可用qt4-dev-tools代替
sudo apt-get install qt4-dev-tools -y
#sudo apt-get install qt5-default -y
sudo apt-get install python-pygraphviz python-kiwi python-pygoocanvas libgoocanvas-dev ipython -y
sudo apt-get install openmpi-bin openmpi-common openmpi-doc libopenmpi-dev -y
sudo apt-get install autoconf cvs bzr unrar -y
sudo apt-get install gdb valgrind -y
sudo apt-get install uncrustify -y
sudo apt-get install doxygen graphviz imagemagick -y
sudo apt-get install texlive texlive-extra-utils texlive-latex-extra texlive-font-utils texlive-lang-portuguese dvipng -y
sudo apt-get install python-sphinx dia -y
sudo apt-get install gsl-bin libgsl2 libgsl-dev -y
sudo apt-get install flex bison libfl-dev -y
sudo apt-get install tcpdump -y
sudo apt-get install sqlite sqlite3 libsqlite3-dev -y
sudo apt-get install libxml2 libxml2-dev -y
#Support for generating modified python bindings
sudo apt-get install cmake libc6-dev libc6-dev-i386 libclang-dev -y
# 官网中没有下面一条安装过程,但是执行pip命令需安装python-pip
sudo apt install python-pip -y
pip install cxxfilt -y
sudo apt-get install libgtk2.0-0 libgtk2.0-dev -y
sudo apt-get install vtun lxc -y
sudo apt-get install libboost-signals-dev libboost-filesystem-dev -y
# 貌似还需要这个,官方没这条
sudo apt-get install p7zip-full -y

至此环境安装脚本写完,注意:仅是环境部分,祈祷不要出错吧,余下漫长的等待过程。

NS3正式安装


首先恭喜你能走到这一步,剩下的基本没什么了,完全可参照官网部分。

有多种安装方式,此处为编译安装

zyb@virtual-machine:~$ mkdir tarballs
zyb@virtual-machine:~$ cd tarballs/
zyb@virtual-machine:~/tarballs$ wget https://www.nsnam.org/release/ns-allinone-3.28.tar.bz2
zyb@virtual-machine:~/tarballs$ tar xf ns-allinone-3.28.tar.bz2
zyb@virtual-machine:~/tarballs$ cd ns-allinone-3.28/
zyb@virtual-machine:~/tarballs/ns-allinone-3.28$ ./build.py --help
Usage: build.py [options] Options:
-h, --help show this help message and exit
--disable-netanim Don't try to build NetAnim (built by default)
--qmake-path=QMAKE_PATH
Provide absolute path to qmake executable for NetAnim
--enable-examples Do try to build examples (not built by default)
--enable-tests Do try to build tests (not built by default)
--build-options=BUILD_OPTIONS
Add these options to ns-3's "waf build" command
zyb@virtual-machine:~/tarballs/ns-allinone-3.28$ ./build.py --enable-examples --enable-tests
...此处省略N个字符
zyb@virtual-machine:~/tarballs/ns-allinone-3.28/ns-3.28$

上述步骤执行后,ns3已成功安装,而且是3.28最新版的!

接下来进行测试,注意scratch-simulator不要带后缀。

zyb@virtual-machine:~/tarballs/ns-allinone-3.28$ cd ns-3.28/
zyb@virtual-machine:~/tarballs/ns-allinone-3.28/ns-3.28$ ./waf --run scratch/scratch-simulator
Waf: Entering directory `/home/zyb/tarballs/ns-allinone-3.28/ns-3.28/build'
Waf: Leaving directory `/home/zyb/tarballs/ns-allinone-3.28/ns-3.28/build'
Build commands will be stored in build/compile_commands.json
'build' finished successfully (5.296s)
Scratch Simulator

第一次编译安装貌似得用build.by命令,一旦工程编译过想进行重新配置可用waf命令,此命令在~/tarballs/ns-allinone-3.28/ns-3.28目录中,和build.by编译工程不再同一目录

# 清除之前配置信息
zyb@virtual-machine:~/tarballs/ns-allinone-3.28/ns-3.28$ ./waf --clean
# 进行配置,默认例子和测试不便宜
zyb@virtual-machine:~/tarballs/ns-allinone-3.28/ns-3.28$ ./waf -d optimized --enable-examples --enable-tests configure
# 安装
zyb@virtual-machine:~/tarballs/ns-allinone-3.28/ns-3.28$ ./waf

上述三行代码没试过,不想再在安装这墨迹了,快哭了。

后续可参考马春光 姚建胜编写的《NS-3网络模拟器基础与应用》

NS-3环境布置及安装的更多相关文章

  1. windows下python Tkinner环境布置(包含PIL环境安装)

    布置步骤:1.安装python 2.7.11 安装步骤:由于网上存在有相关经验,所以在此引用一下 http://jingyan.baidu.com/article/0bc808fc42dfab1bd4 ...

  2. Lamp环境的详细安装教程

    原文:Lamp环境的详细安装教程 架构LAMP环境 1.布置LAMP环境之前的准备工作 在架构LAMP环境时,确保你的Linux系统已经安装了make.gcc.gcc-c++(使用rpm -q xxx ...

  3. C蛮的全栈之路-node篇(一) 环境布置

    目录 C蛮的全栈之路-序章 技术栈选择与全栈工程师C蛮的全栈之路-node篇(一) 环境布置C蛮的全栈之路-node篇(二) 实战一:自动发博客 ---------------- 我是分割线 ---- ...

  4. GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置

    GITHUB个人博客搭建-Pelican 在Windows环境下的安装及配置 前言 此篇博客主要为Pelican在Windows平台下的配置安装所写,在此过程中主要参考资料烟雨林博客.poem_of_ ...

  5. libCURL开源库在VS2010环境下编译安装,配置详解

    libCURL开源库在VS2010环境下编译安装,配置详解 转自:http://my.oschina.net/u/1420791/blog/198247 http://blog.csdn.net/su ...

  6. Redhat环境下编译安装Google Bazel

    Redhat环境下编译安装bazel 作者:Jack47 目前Google Bazel没有提供各个操作系统下的二进制安装包,只提供源代码,需要我们自己编译安装,详情可以见我翻译的中文版Google B ...

  7. Windows环境下载与安装JBOSS服务器的详细图文教程

    一.JDK的安装 首先安装JDK,配置环境变量(PATH,CLASSPATH,JAVA_HOME). 可以参照:Windows环境下JDK安装与环境变量配置 二.Jboss的介绍 JBOSS是EJB的 ...

  8. FIS--关于下载php后的配置(启动fis的调试服务器(注意添加 --no-rewrite 参数),如果报错 没有php-cgi环境,请 安装 它,并把php-cgi命令加到系统的环境变量)

    “启动fis的调试服务器(注意添加 --no-rewrite 参数),如果报错 没有php-cgi环境,请 安装 它,并把php-cgi命令加到系统的环境变量” 对官网这句话的解释: 下载php-5. ...

  9. windows2008r2环境双实例安装mysql5.6

    windows2008r2环境双实例安装mysql5.6 环境:windows2008 r2 标准版 1.默认安装了一个mysql5.6端口为3306 2.使用msi文件安装需要.net4.0支持,安 ...

随机推荐

  1. Dell XPS 7590 Hackintosh

    网上主流引导Hackintosh的工具有Chameleon, Clover和OpenCore. 但是随着Hackintosh重要驱动开发团队acidanthera逐渐转向OpenCore,后者显然才是 ...

  2. Java高级特性1_流库_初体验

    Java高级特性流库_初体验 面对结果编程 在编程里, 有两种编程方式, 一种是面对过程编程, 一种是面对结果编程. 两者区别如下 面向过程编程 面向过程编程需要编程程序让程序依次执行得到自己想要的结 ...

  3. 017 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 11 变量综合案例

    017 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 11 变量综合案例 本文知识点:变量 相同类型的变量可以一次同时定义多个 例:可以一行代码同时定义2个变量x ...

  4. Oracle Database XE 11gR2 自带的用户,新建用户,修改用户密码

    操作系统:Windows 10 x64 第一节:下载 Oracle Database XE 11gR2 第二节:安装.验证安装 Oracle Database XE 11gR2 第三节:Oracle ...

  5. 【题解】[AHOI2013]作业

    Link 题目大意:\(n\)个数,\(m\)个询问,每次四个参数,\(l,r,a,b\),问区间\([l,r]\)中出现过的,数值在\([a,b]\)区间中的数的个数以及区间\([l,r]\)中数值 ...

  6. 达梦产品技术支持培训-day8-DM8数据库备份与还原-实操

    1.DM8的备份还原方法 Disql 工具:联机数据备份与还原,包括库备份.表空间备份与还原.表备份与还原:  DMRMAN 工具:脱机数据库备份还原与恢复: 客户端工具 MANAGER和CONSOL ...

  7. 最新最最最简单的Snagit傻瓜式破解教程(带下载地址)

    最新最最最简单的Snagit傻瓜式破解教程(带下载地址) 下载地址 直接滑至文章底部下载 软件介绍 一个非常著名的优秀屏幕.文本和视频捕获.编辑与转换软件.可以捕获Windows屏幕.DOS屏幕:RM ...

  8. Signature Scanning(中文暂时译为"特征码扫描")是在C++(起码我是用C++^^)开发中很好的一种方式

    1.介绍 本文主要简单介绍在没有代码的情况下,如何从一个动态链接库中获取某个函数的址.主要实现方式为Signature Scanning(特征码扫描) 2.什么是Signature Scanning( ...

  9. 第3天 | 12天搞定Python,用VSCode编写代码

    Visual Studio Code (简称 VS Code), 是一款免费并且开源的现代化轻量级代码编辑器,支持语法高亮.智能代码补全.自定义热键.括号匹配.代码片段等特性,并针对网页开发做了优化. ...

  10. 记录一次源码扩展案列——FastJson自定义反序列化ValueMutator

    背景:曾经遇到一个很麻烦的事情,就是一个json串中有很多占位符,需要替换成特定文案.如果将json转换成对象后,在一个一个属性去转换的话就出出现很多冗余代码,不美观也不是很实用. 而且也不能提前在j ...