搭建Ubuntu 14.04 ns3+eclipse调试环境



*转载请注明本文地址。*

一、修改成国内的Ubuntu源

备份源文件:

sudo cp /etc/apt/sources.list /etc/apt/sources.list_backup

修改源,用gedit或其他编辑器打开:

sudo gedit /etc/apt/sources.list

(这里以中科大为例子)

中国科学技术大学更新服务器(位于合肥,千兆教育网接入,百兆电信/联通线路智能路由),由中科大Linux用户协会和中科大学网络信息中心维护,包含其他开源镜像,Deepin官方服务器实际亦指向此处。

将以下内容覆盖原来/etc/apt/sources.list的全部内容


deb http://debian.ustc.edu.cn/ubuntu/trusty main multiverse restricted universe

deb http://debian.ustc.edu.cn/ubuntu/trusty-backports main multiverse restricted universe

deb http://debian.ustc.edu.cn/ubuntu/trusty-proposed main multiverse restricted universe

deb http://debian.ustc.edu.cn/ubuntu/trusty-security main multiverse restricted universe

deb http://debian.ustc.edu.cn/ubuntu/trusty-updates main multiverse restricted universe

deb-srchttp://debian.ustc.edu.cn/ubuntu/trusty main multiverse restricted universe

deb-srchttp://debian.ustc.edu.cn/ubuntu/trusty-backports main multiverse restricted universe

deb-srchttp://debian.ustc.edu.cn/ubuntu/trusty-proposed main multiverse restricted universe

deb-srchttp://debian.ustc.edu.cn/ubuntu/trusty-security main multiverse restricted universe

deb-srchttp://debian.ustc.edu.cn/ubuntu/trusty-updates main multiverse restricted universe


执行

sudo apt-getupdate

二、安装ns3

使用以下脚本安装:


#!/bin/bash

sudo apt-get -y install gcc

sudo apt-get -y install g++

sudo apt-get -y install python

sudo apt-get -y install python-dev

sudo apt-get -y install mercurial

sudo apt-get -y install bzr

sudo apt-get -y install gdb valgrind

sudo apt-get -y install gsl-bin libgsl0-dev libgsl0ldbl

sudo apt-get -y install flex bison libfl-dev

sudo apt-get -y install tcpdump

sudo apt-get -y install sqlite sqlite3 libsqlite3-dev

sudo apt-get -y install libxml2 libxml2-dev

sudo apt-get -y install libgtk2.0-0 libgtk2.0-dev

sudo apt-get -y install vtun lxc

sudo apt-get -y install uncrustify

sudo apt-get -y install doxygen graphviz imagemagick

sudo apt-get -y install texlive texlive-extra-utils texlive-latex-extra

sudo apt-get -y install python-sphinx dia

sudo apt-get -y install python-pygraphviz python-kiwi

sudo apt-get -y install python-pygoocanvas libgoocanvas-dev

sudo apt-get -y install libboost1.46-dev

sudo apt-get -y install libboost-filesystem1.46-dev

sudo apt-get -y install libboost-signals-dev libboost-filesystem-dev

sudo apt-get -y install openmpi-bin openmpi-doc libopenmpi-dev

#用以下命令安装ns3

WorkSpacePath="ns3_workspace"

Ns3Version="3.25"

mkdir $WorkSpacePath

cd $WorkSpacePath

wget http://www.nsnam.org/release/ns-allinone-$Ns3Version.tar.bz2

tar xjf ns-allinone-$Ns3Version.tar.bz2

#安装g++

sudo apt-get install build-essential

cd ns-allinone-$Ns3Version

./build.py --enable-examples --enable-tests

cd ns-$Ns3Version

./test.py -c core

./waf --run hello-simulator


保存为文件(如文件名为:ns3_install)后存放在Home目录后用以下命令执行

bash ns3_install

只要能够成功运行hello-simulator即为安装成功

三、安装Eclipse

直接使用apt-get命令安装:

sudo apt-get install eclipse-cdt

四、新建ns3工程

     安装完Eclipse后新建C++Project

     此处Project name用ns3的版本号命名(ns325)

     为了不用多余的复制,选择前面解压和编译后的ns3的路径(/home/ns3/ns3_workspace/ns-allinone-3.25/ns-3.25)

     Project type选择Empty Project,

     Toolchains选择:CrossGCC

   如下图1:

图1 新建eclipse的ns3工程

点击Next后Finish。

五、配置ns3工程相关属性

可以参考视频: https://www.youtube.com/watch?v=npv8gBoySyk  

1. 配置wafbuilder

     在这个 Project 的Properties 中找到C/C++ Build:

      A. Builder Settings标签中:

          (a) 去掉“Use default build command”和“Generate Makefileautomatically”前面的勾

          (b) 设置Build command:/home/ns3/ns3_workspace/ns-allinone-3.25/ns-3.25/waf

             【即ns3工程编译器waf路径】

         (c) 设置Build directory:/home/ns3/ns3_workspace/ns-allinone-3.25/ns-3.25/build

             【即ns3工程生成路径】

    B. Behaviour标签中:

         (a)设置Build(Incremental build): build

如下图2和3:

图2 配置wafbuilder的Builder Settings标签


图3 配置wafbuilder的Behaviour标签

2. 设置debugger

    (如果要调试程序,可以配置此项,这样直接点运行就能debug了,呵呵)

     点上面菜单的Run->Defug Configurations...:

    A. Main标签中:

           (a) 填写C/C++ Application:build/scratch/scratch-simulator(你的app的路径,可以使用SearchProject...按钮来选择)

            (b) 填写Project:ns325(项目名)

   B. Environment标签中:

           (a) 新增环境变量 LD_LIBRARY_PATH :/home/ns3/ns3_workspace/ns-allinone-3.25/ns-3.25/build

如下图4:

图4 设置debugger

3.Configure To Run From Eclipse

       开始配置eclipse中运行方式,一共有两种配置方法,此处先讲第一种:Configure External Runner,使用外部工具;

        (1) Run->ExternalTools->External Tools Configurations:如图所示

        (2) Location:${workspace_loc:/Project_ns3_JAN9/ns-3.21}/waf(填的还是waf文件的地址)

        (3) Working Directory:${workspace_loc:/Project_ns3_JAN9/ns-3.21/scratch}(即那个源文件.cpp地址)

图5 Configure External Runner From Eclipse

       到此时,就可以运行了,运行弹出来的对话框中填入要运行的文件的名字就可以了,例如scratch-simulator,后面不跟.cc。

图6 External Runner

       接下来就会出现运行成功的字样,如

       'build' finished successfully (0.308s)

      Scratch Simulator

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 162,475评论 4 372
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 68,744评论 2 307
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 112,101评论 0 254
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,732评论 0 221
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 53,141评论 3 297
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 41,049评论 1 226
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,188评论 2 320
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,965评论 0 213
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,716评论 1 250
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,867评论 2 254
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,341评论 1 265
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,663评论 3 263
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,376评论 3 244
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,200评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,990评论 0 201
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 36,179评论 2 285
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,979评论 2 279

推荐阅读更多精彩内容