• 在 ns3.25中添加 plc(电力线载波) 模块


      上一篇安装好了 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 进行工作了

       

      

  • 相关阅读:
    12个JavaScript MVC框架评估 简单
    chrome developer tool 调试技巧 简单
    转CSS3线性渐变 简单
    base64:URL背景图片与web页面性能优化 简单
    转linux下apache安装gzip压缩 简单
    转思考什么时候使用Canvas 和SVG 简单
    转周报的逻辑 简单
    浏览器三种刷新方式采取的不同缓存机制 简单
    poj 1308 Is It A Tree? (并查集)
    poj 2912 Rochambeau (并查集+枚举)
  • 原文地址:https://www.cnblogs.com/MisterXu/p/9610371.html
Copyright © 2020-2023  润新知