美文网首页
ubuntu16.04 LTS安装NS-3.22及DTN cod

ubuntu16.04 LTS安装NS-3.22及DTN cod

作者: Mjolnir1107 | 来源:发表于2019-03-19 12:16 被阅读0次

    参考文章

    1、解决ubuntu - Unable to locate package python-gnomedesktop: Installing PyViz in ns3
    2、E:无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系
    3、DTN Code for ns-3

    参考网站

    清华大学开源软件镜像站
    DTN Code for ns-2 and ns-3

    安装过程

    替换软件源配置文件

    使用清华大学开源软件镜像站,替换系统默认源,以提高下载速度;

    apt-get update
    

    更新一下即可

    配置依赖环境

    apt-get install gcc g++ python
    apt-get install gcc g++ python python-dev
    apt-get install mercurial python-setuptools git
    apt-get install qt4-dev-tools libqt4-dev
    apt-get install cmake libc6-dev libc6-dev-i386 g++-multilib
    apt-get install gdb valgrind
    apt-get install gsl-bin libgsl2 libgsl-dev
    apt-get install flex bison libfl-dev
    apt-get install tcpdump
    apt-get install sqlite sqlite3 libsqlite3-dev
    apt-get install libxml2 libxml2-dev
    apt-get install libgtk2.0-0 libgtk2.0-dev
    apt-get install vtun lxc
    apt-get install uncrustify
    apt-get install python-dev python-pygraphviz python-kiwi 
    apt-get install python-pygoocanvas python-gnome2 
    apt-get install python-gnome2-desktop-dev python-rsvg
    apt-get install ipython
    

    后四步是为了安装Visualizer(PyViz),这其中出现python-gnomedesktop应替换成python-gnome2-desktop-dev的问题,详见参考文章1。

    安装中出现“无法修正错误,因为您要求某些软件包保持现状,就是它们破坏了软件包间的依赖关系。”这是源的问题。

    解决办法:

    打开更新设置,在“更新”选项卡中选则:重要安全更新 和 推荐更新

    并在“其他软件”选项卡中,去掉有问题等源

    最后更新一下即可

    apt-get update
    

    安装NS-3.22

    1. 下载 ns-allinone-3.22.tar.bz2

    2. 安装

    tar -xvf ns-allinone-3.22.tar.bz2
    cd ns-allinone-3.22
    ./build.py --enable-examples --enable-tests
    cd ns-3.22
    ./waf clean
    ./waf -d optimized --enable-examples --enable-tests configure
    ./waf clean
    ./waf -d debug --enable-examples --enable-tests configure
    ./waf
    ./test.py -c core
    

    安装DTN Code for ns-3

    1、下载DTN Code for ns-3.22

    2、In your home directory, create new directory for the DTN code and extract the files there

    mkdir ns-allinone-3.22/ns-3.22/examples/DTN_SF_UDP
    mv ns3dtn.tar.gz ns-allinone-3.22/ns-3.22/examples/DTN_SF_UDP
    cd ns-allinone-3.22/ns-3.22/examples/DTN_SF_UDP
    tar -xvf ns3dtn.tar.gz
    

    3、Move the modified regular-wifi-mac.h (modified for DTN code) and mac-low.cc (bug fix)files to ns-allinone-3.22/ns-3.22/src/wifi/model directory and run waf

    mv regular-wifi-mac.h ../../src/wifi/model
    mv mac-low.cc ../../src/wifi/model
    cd ../..
    ./waf
    

    4、Subdirectories Run1-Run6 as well as files dtn.cc, mypacket.cc, mypacket.h, simulate.sh,waf, and wscript stay in the current directory. Move the trace file,sf_downtown_nodes116_time3600.tcl, to ns-allinone-3.22/ns-3.22/examples directory

    cd examples/DTN_SF_UDP
    mv sf_downtown_nodes116_time3600.tcl ..
    

    5、先用文本编辑器打开examples/DTN_SF_UDP/simulate.sh,里面

    tracedir='/home/jani/ns-allinone-3.22/ns-3.22/examples'
    thisdir='/home/jani/ns-allinone-3.22/ns-3.22/examples/DTN_SF_UDP'
    

    改成自己的的路径。

    6、运行!

    ./simulate.sh
    

    nohup 命令

    用途:不挂断地运行命令。

    语法:nohup Command [ Arg … ] [ & ]

    描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示”and”的符号)到命令的尾部。

    相关文章

      网友评论

          本文标题:ubuntu16.04 LTS安装NS-3.22及DTN cod

          本文链接:https://www.haomeiwen.com/subject/jllgmqtx.html