我的系统是ubuntu12.04, 安装NS3过程真是步步惊心,记录一下。

1.按照网上教程先把支持库都安了,可以查看参考的原贴链接:https://www.jianshu.com/p/2c6c38ebe936

  • C++和python安装,必装
    1 sudo apt-get install gcc g++ python
    2 sudo apt-get install gcc g++ python python-dev
  • NS3代码维护使用的源码版本控制管理系统
    3 sudo apt-get install mercurial
  • 运行python绑定ns-3-dev需要bazaar这个组件
    4 sudo apt-get install bzr
  • 调试工具
    5 sudo apt-get install gdb valgrind
  • 支持更多精确WIFI模块的GNU Scientific Library (GSL)
    6 sudo apt-get install gsl-bin libgsl-dev libgsl2 (重要,网上其他这句话多为错误)
  • 仿真必需的词法分析器和语法分析生成器,必装
    7 sudo apt-get install flex bison libfl-dev
  • 一些Network Simulation Cradle (nsc) stacks需要gcc-3.4
    8 sudo apt-get install g++ gcc //不用执行,已经是最新版
  • 读取pcap的packet traces,即包嗅探器
    9 sudo apt-get install tcpdump
  • 支持统计特性的数据库软件
    10 sudo apt-get install sqlite sqlite3 libsqlite3-dev
  • xml的配置存储软件(requires libxml2 >= version 2.7)
    11 sudo apt-get install libxml2 libxml2-dev
  • 基于GTK的配置系统
    12 sudo apt-get install libgtk2.0-0 libgtk2.0-dev
  • 在虚拟机and ns-3上测试
    13 sudo apt-get install vtun lxc
  • 支持utils/check-style.py 代码风格检查程序
    14 sudo apt-get install uncrustify
  • 文档生成器,从源代码中生成说明文档
    15 sudo apt-get install doxygen graphviz imagemagick
    16 sudo apt-get install texlive texlive-extra-utils texlive-latex-extra //很大 留到最后吧
    17 sudo apt-get install python-sphinx dia
  • Gustavo’s ns-3-pyviz的可视化软件
    18 sudo apt-get install python-pygraphviz python-kiwi python-pygoocanvas libgoocanvas-dev
  • 支持openflow 模块(requires some boost libraries)
    19 sudo apt-get install libboost-signals-dev libboost-filesystem-dev
  • 支持基于 MPI的分布式仿真
    20 sudo apt-get install openmpi*

我没有安装6,15,16和20。而且需要安装qt4,使用以下命令安装。

sudo apt-get install qt4-dev-tools libqt4-dev

2. 下载并解压好ns3之后,运行./build.py出了问题

第一次说找不到python3,于是下载安装,建议装高版本,不然又要升级。参考:https://blog.csdn.net/qq_15260769/article/details/88822620

下载

wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz

解压

tar zxvf Python-3.7.3.tgz
cd Python-3.7.3

编译

./configure --with-ssl
make
sudo make install

注意:–with-ssl必须加上,否则使用pip安装第三方包时,会引发ssl错误。导致无法使用。如果执行pip install出错,重新编译安装即可。

错误解决:

ZipError:sudo apt install zlib*ImportError:'_ctypes'sudo apt-get install python-dev python-setuptools python-pip python-smbus build-essential libncursesw5-dev libgdbm-dev libc6-dev zlib1g-dev libsqlite3-dev tk-dev libssl-dev openssl libffi-dev

python3.7位置

whereis python3.7

创建软连接

# 添加python3的软链接
sudo ln -s /usr/local/bin/python3.7 /usr/bin/python3.7
# 添加 pip3 的软链接
sudo ln -s /usr/local/bin/pip3.7 /usr/bin/pip3.7

安装好python3之后重新到ns的目录下运行./build.py,提示gcc版本过低,于是升级g++到5,参考:https://blog.csdn.net/jiangjiang_jian/article/details/80694799

至此基本上已经完成,最后提醒一下各位,虚拟机的内存稍微给大点,第一次感觉到内存给小了直接终端死掉的快感。

虐我千百遍之NS3安装相关推荐

  1. VMware虐我千百遍,我却待她如初恋

    文章目录 一.相关环境 1.操作系统 2.VMware版本 二.我遇到过的bug 1.VMCI驱动程序无法自动安装,需要手动安装 2.Vmware提示以独占方式锁定此配置文件失败 3.VMware提示 ...

  2. Maven 虐我千百遍,我待 Maven 如初恋 侵删

    前言 在如今的互联网项目开发当中,特别是Java领域,可以说Maven随处可见.Maven的仓库管理.依赖管理.继承和聚合等特性为项目的构建提供了一整套完善的解决方案,可以说如果你搞不懂Maven,那 ...

  3. 算法虐我千百遍,我待算法如初恋

    转自:算法虐我千百遍,我待算法如初恋 算法虐我千百遍,我待算法如初恋. 学习方法  1) 把所有经典算法写一遍  2) 看算法源码  3) 加入算法学习社区,相互鼓励学习  4) 看经典书籍 基本数据 ...

  4. 那些曾虐我千百遍的计算机组成原理

    那些曾虐我千百遍的计算机组成原理 本笔记知识点来源于b站狂神说:聊汇编先导课,有兴趣的小伙伴点这里:狂神聊汇编先导课 文章目录 那些曾虐我千百遍的计算机组成原理 进制的本质 有符号数和无符号数的区别 ...

  5. 客户虐我千百遍,我待客户如初恋

    误闯误撞,进入了IDC行业,从事了服务器租用及托管的销售工作.很多人问我,什么是IDC,什么是服务器?我知道我解释的过于专业那么会有更多的问题,毕竟自己也不是百科全书,只好简答回复"没有显示 ...

  6. 我待数据如初恋,数据虐我千百遍

    我待数据如初恋,数据虐我千百遍 1.几个基础概念 1.1表达式 1.2语句 1.3程序 1.4函数 2.标识符 2.1关键字 2.2标识符的构成 3.基本数据类型 3.1整数和小数 3.2 布尔值和空 ...

  7. Maven虐我千百遍,我待Maven如初恋

    前言 在如今的互联网项目开发当中,特别是Java领域,可以说Maven随处可见.Maven的仓库管理.依赖管理.继承和聚合等特性为项目的构建提供了一整套完善的解决方案,可以说如果你搞不懂Maven,那 ...

  8. 我待JAVA如初恋,JAVA虐我千百遍,如何彻底卸载JAVA

    一般很少写一些手操的中间过程,作为一个爽快人,过了就过了不纠结,但是这次java的升级着实让我觉得有记录下来的必要 起因是在升级gradle版本到7.3的时候,说让我装java11,我电脑是java8 ...

  9. 【算法虐我千百遍,我待ACM如初恋】Hail Algorithm,Hallelujah ACM!!

    (谨向余光中先生致敬) 鼠标轻划标题上的永恒常量 有人好奇的看着你,朋友 太过熟悉的窗口,人们不知 那无垠的循环中,你的叮咛 人心中总有魔兽红警反恐撸啊撸 却不知你富有魅力的救赎 三百分钟即创世 何止 ...

最新文章

  1. Azure PowerShell (6) 设置单个Virtual Machine Endpoint
  2. Spring Annotation Processing: How It Works--转
  3. linux 切换python版本_linux下多个python版本切换如何设置
  4. 快给你的app上锁吧(android图案解锁)
  5. sourcetree打开快捷_Sourcetree使用:拉取打开项目的步骤
  6. Spring的IoC与DI差异
  7. 计算机虚拟现实技术论文好写吗,虚拟现实技术的论文
  8. 我的世界java版_我的世界Java版1.15版本
  9. volley 调用php接口,从Android发送数组并使用Volley在PhP服务器上...
  10. 遗传算法 python_Python实现入门级遗传算法
  11. X200 BIOS 黑屏
  12. STM32——EMWIN JPEG 图片显示(二十三)
  13. MySQL8.0超细致下载安装教程
  14. springMVC 面试题整理
  15. 光电耦合器原理及应用介绍
  16. 长链剖分 总结 【知识点】
  17. SAP中常用到的增强
  18. 【故障处理】IMP-00010错误 12C的dmp文件导入11G
  19. JIL Mobile Widget 初步认识
  20. 项目中常用的管理工具 confluence,wiki,jira

热门文章

  1. 学java的第九天,面向对象 23.2.15
  2. 十个海量数据处理方法大总结
  3. python的项目骨架_练习 46 - 一个项目骨架 - Learn Python 3 The Hard Way
  4. pd 生成mysql 脚本_powerdesigner 生成数据库脚本
  5. 数学分析教程(科大)——7.2笔记+习题
  6. 零基础学软件测试,最先开始学什么?
  7. Android 编译打包的那些疑问
  8. mapboxgl加载google地图、高德地图的在线切片地图
  9. Listener method could not be invoked with the incoming message消息队列RabbitMQ项目启动报错及监听队列报错
  10. 程序实现IMEI/MEID校验位计算