上一篇安装好了 ns-3.25,这里继续往里添加 plc 模块。整理之前现推荐一个网站,大家可以参考。

  英属哥伦比亚大学(University of British Columbia,UBC)提供NS-3的PLC模块:http://www.ece.ubc.ca/~faribaa/ns3_plc_software.htm

  这里添加 plc 模块分为两部分,第一部分是安装 boost,第二部分是下载 plc 源代码并编译

==============================第一部分:安装boost =======================================

  笔者试了两种方法,因为首次安装的时候使用方法1成功安装,由于解决一些其他问题,需要另一版本的 boost,这次方法1 就行不通了,所以笔者又寻得方法2,大家在方法1安装不成功的情况下,可以试一下方法2。(方法参考哪位老师的忘了,当时错误很多,很乱,只顾整理了)

方法1:

  1、下载boost安装包到 usr/local/ 目录下, https://sourceforge.net/projects/boost/files/boost/1.61.0/boost_1_61_0.tar.bz2/download   (笔者使用远程桌面,网速不给力,直接windows下载安装包拷贝进去的)其他版本可在boost官网下载:www.boost.org

  2、解压缩,tar jxvf boost_1_61_0.tar.bz2

  3、转到boost_1_61_0 目录下

  4、执行   sudo ./bootstrap.sh  进行环境配置

  5、上一步配置好之后,会得到一个bjam文件,执行它   sudo ./bjam     (时间比较长,可能要十几分钟)

  6、测试,在任意目录下创建  test.cpp

    #include<iostream>

    #include<boost/lexical_cast.hpp>

    int main()

    {

      int a = boost::lexical_cast<int>("123456");

      std::cout<<a<<std::endl;

      return 0;

    }

    运行   sudo g++ test.cpp -o test

       sudo ./test

    输出 123456,至此,boost安装成功

方法2:

    方法1的前四步在这里同样适用,不在赘述,下面从第5步开始

    5、(重点)修改 boost_1_61_0/tools/build/example/user-config.jam文件,在最后加上一行 “#using mpi ;”(注:mpi后有个空格,然后是分号)

    6、执行  ./b2

    7、执行  ./b2 install

    8、测试跟方法1的又是一样的,输出 123456 即为安装成功。

===================================第二步:添加 plc 模块===============================

  1、切换到 ns-3.25的源目录下, ns-allinone-3.25/ns-3.25/src 目录下,将  plc 模块克隆或者复制到源目录中   git clone https://github.com/ns3-plc-module/plc.git(笔者同样是拷贝进去的)

  2、解压(克隆和直接下载的文件压缩方式不知道一样不,笔者是zip文件)  sudo unzip  plc-master.zip   然后把得到的文件夹名plc-master修改为 plc  sudo  mv plc-master/  plc/   (顺便说一下,修改文件名没有  / ),这里笔者把plc压缩包删掉了

  3、开始编译plc模块

    3.1、先配置     ./waf --enable-examples --enable-tests configure     会有如下成功提示

            

    3.2、编译plc模块   ./waf        看到选中白色地方的  plc 没,成了

            

    3.3、我们来测试一把,使用模块自带的简单示例

      ./waf --run src / plc / examples / plc-netdevice-example

            

    build finished successfully看到没,真成了。

    好了,下面就可以使用 ns3-plc 进行工作了

   

  

在 ns-3.25中添加 plc(电力线载波) 模块的更多相关文章

  1. Android中添加自己的模块 【转】

    本文转载自:http://wallage.blog.163.com/blog/static/17389624201021791333695/ 转:http://blog.csdn.net/yili_x ...

  2. 在jekyll模板博客中添加网易云模块

    最近使用GitHub Pages + Jekyll 搭建了个人博客,作为一名重度音乐患者,博客里面可以不配图,但是不能不配音乐啊. 遂在博客里面引入了网易云模块,这里要感谢网易云的分享机制,对开发者非 ...

  3. idea中添加多级父子模块

    在 IntelliJ IDEA 中,没有类似于 Eclipse 工作空间(Workspace)的概念,而是提出了Project和Module这两个概念. 在 IntelliJ IDEA 中Projec ...

  4. ZYNQ原理图中添加RTL设计模块

    前言 已有的RTL模块怎么添加到原理图中? 流程 (1)添加文件到设计中. (2)右键文件添加到block design中. (3)连线即可. 以上.

  5. 如何在html中添加引用公共模块文件

    1.首先需要修改apache的配置文件: 打开httpd.conf 搜索“AddType text/html .shtml” 搜索结果: AddType text/html .shtml .html ...

  6. 安装memcached服务器和PHP中添加memcache拓展模块

    Memcached是一个高性能的分布式内存对象缓存系统,用于动态web应用以减轻数据库的负载.它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提拱动态 数据驱动网站的速度. memcached ...

  7. 如何在Pycharm中添加新的模块

    在使用Pycharm编写程序时,我们时常需要调用某些模块,但有些模块事先是没有的,我们需要把模块添加上去. 最近在学习爬虫,写了下面几行代码: 结果出现错误 错误ModuleNotFoundError ...

  8. JS向固定数组中添加不重复元素并冒泡排序

    向数组{7,20,12,6,25}中添加一个不重复的数字,然后按照从小到大的顺序排列 源代码: <!DOCTYPE html> <html> <head> < ...

  9. 关于ApiCloud的Superwebview在androidstudio中集成微信支付模块,提示模块未绑定的问题

    前两天ApiCloud项目集成了微信支付模块,android端今天也将ApiCloud官方的uzWxPay.jar集成了.在编译玩测试的时候提示wxPay模块为绑定!我的项目是使用ApiCloud推出 ...

随机推荐

  1. Ubuntu16.04安装编译caffe以及一些问题记录

    前期准备: 最好是python虚拟环境 [anaconda的创建虚拟环境] 创建 conda create -n caffeEnv(虚拟环境名字) python=3.6 激活环境 source act ...

  2. xiao_ren

  3. margin-top的兼容问题

    产生的条件:子元素给了margin-top,并且父元素没有浮也没有其他样式,浏览器解析的结果是父元素下去了. 解决方法:1.给子元素或者父元素添加浮动,缺点:如果不需要浮动,添加浮动也页面布局会乱 2 ...

  4. 微信获取ticket及生成二维码(临时或永久)

    微信获取ticket及生成二维码(临时或永久) curl.php---- define("APPID",""); define("APPSECRET& ...

  5. C#封装的websocket协议类

    关于VB版之前已经写了,有需要可以进传送门<VB封装的WebSocket模块,拿来即用>,两个使用都差不多,这里简单概述一下: 连接完成后,没有握手就用Handshake()先完成握手之后 ...

  6. using Sysyem.Net.Http命名空间引用不了的解决方案

    1.查看.Net Framework的框架是否是在4.5之上,如果不是要下载4.5之上的目标框架. 2.在引用器里面添加using System.Net.Http命名空间 选择项目列表中的“引用”-- ...

  7. vue 验证电话

    <el-form :model="orderaddForm" :rules="rulesPhone" ref="orderaddForm&quo ...

  8. Qt5和VS2017建立开发环境,安装后新建项目找不到Qt选项!!!

    最近开发win驱动和Qt5测试程序,需要建立Qt5和VS2017开发环境---对于Qt5和VS2017安装这里不做多余叙述. 参考资源很多,讲解也不错!! 这里切入正题:在VS2017中安转Qt vs ...

  9. js数组和对象相等判断、拷贝详解(结合几个现象讲解引用数据类型的趣事)

    序言 最近遇到几个js引用数据类型造成的bug,今天结合bug详细分析一下,避免以后再犯,也希望能帮大家提个醒,强化js基本功. 目录 1.浅拷贝.深拷贝,解决变量赋值相互影响问题 2.判断2个数组. ...

  10. 使用jQuery.form库中ajaxSubmit提交表单时遇到的一些问题

    初入前端,网上找的很多资料都不够详细,导致遇到很多问题,现记录如下: 1.首先引入 <script src="~/Scripts/jquery-1.10.2.js">& ...