阅读 276

Ubuntu20.04 NS3安装配置

说在前面

  • 根据自己Ubuntu版本,选择相应的ns3版本
  • 比如我是Ubuntu20.04,选择的是ns3 3.30.1,之前选择了ns3 3.26,在进行./build时会发生如下问题
  • 参考后更改了下载对象,就这个折腾来回快一天
  • 安装ns3的时候,命令全部加sudo

安装参考

  • 最初参考的是这篇,因为前面说的那个报错解决不了,最后选择了参考官方说明文档安装

安装说明

  • 官方说明文档前面都是废话,从第三部分开始有用,但是也包含很多废话

首先安装依赖,,可以从官方说明文档的这个位置找到这个网址

  • 在的下图的位置开始才是Ubuntu系列的安装方法
  • 他里面有说明哪些版本的Ubuntu分别需要安装什么东西,看仔细一些,当然如果偷懒,也可以直接全下,但记得下载全部要sudo
  • 我的依赖安装时, apt install python-pygraphviz python-kiwi python-pygoocanvas libgoocanvas-dev ipython这个依赖是无法安装的,提示英文版“无法定位本地可用包”,因为这个是在下载可视化软件,因此使用代替
  • 依赖都安装完以后不要点击jump to installation,也不要去做里面的installation部分的内容,这时候要回到

回到之后,直接快进到3.2.1,只做3.2.1

  • 图中第一块指令在创建一个叫workspace的文件夹,然后进入文件夹,然后在文件夹里面wget下载ns3相应版本的压缩包,然后解压
  • 图中第二块指令要先进入 ns-allinone-3.xx 文件夹,才用ls查看这个文件里面有什么,可以比对一下,基本是没有问题
  • 除了里面的wget下载方式,也可以直接到,点击黄色的ns-allinone-3.30.1就可以下载压缩包,然后跟里面一样解压操作,ls就可以了。

编译ns3,直接继续快进到3.3,只做3.3.1

  • 注意:他这个./build.py --enable-examples --enable-tests的两个--以及后面的内容也要复制到终端执行
  • 继续快进到3.3.3
  • 执行./waf clean./waf configure --build-profile=optimized --enable-examples --enable-tests两条指令,结果可以和里面给出的比对一下,是不是正确安装了。
  • 这一步,看到他的sorry了吗?我承认我一开始没看到。
  • 这个是把waf清空,再编译一遍,编译的这个过程要等比较久。
  • 看到sorry的朋友,执行完./waf clean./waf configure --build-profile=optimized --enable-examples --enable-tests以后,3.3.3剩下内容不用做了,可以继续快进到3.4

测试

  • 执行./test.py -c core,然后结果和里面给出的比对一下,是不是正确。

样例

  • 比对完就可以到3.5了
  • 看见Congratulations了吗?胜利在前方!
  • 执行./waf --run hello-simulator如果出现Hello Simulator,那么Congratulations!
  • 如果没有看到,也有给出解决方案,即
  • 跑完这俩,再跑一次./waf --run hello-simulator就有了

总结

  • 来来回回折腾一天,根本原因是ns3版本和Ubuntu版本不匹配,这是万万没想到的,这个过程因为误会了./build出不来结果的原因,而学到了一些其他知识:
    • ,我是用了rm -rf temp这种类型
    • ,我是用了touch
    • ,,这是当时以为./build出不来是因为gcc等级太高,就要给他降级而下的gcc3.4和g++3.4,一般第一个教程就可以解决了,一般用不上第二个。
    • 出现og.h:323:44: error: ambiguous overload for ‘operator<<’ (operand types are ‘ns3::ParameterLogger’ and ‘ns3::FatalImpl::{anonymous}::destructor*’)报错,考虑用python2来编译
    • 以及的那一部分

原文:https://www.cnblogs.com/2002ljy/p/15125981.html

文章分类
代码人生
文章标签
版权声明:本站是系统测试站点,无实际运营。本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 XXXXXXo@163.com 举报,一经查实,本站将立刻删除。
相关推荐