设为首页 收藏本站
查看: 1118|回复: 0

[经验分享] ubuntu16.04下安装NS-2.35以及对simple例的理解

[复制链接]

尚未签到

发表于 2017-6-23 10:14:11 | 显示全部楼层 |阅读模式
  本人是在VMWare上安装的ubuntu16.04版本,然后安装NS2.35.
  1.下载ns2的安装包,这里我选择的是ns-allinone-2.35.tar.gz压缩格式的all in one安装包,all in one 安装包包含所有的组件,比较方便,另附下载地址:
  http://www.isi.edu/nsnam/ns/ns-build.html
  2.安装前要先进行一些准备工作进行配置环境,输入如下代码:
  $sudo apt-get install build-essential
  $sudo apt-get install tcl8.4 tcl8.4-dev tk8.4 tk8.4-dev
  $sudo apt-get install libxmu-dev libxmu-headers
  3.ns2的解压和安装(也可以在ubuntu下联网用命令下载安装)
  首先把ns-allinone-2.35.tar.gz复制到home/xxx的文件夹下。xxx代表是你自己设置的ns2文件夹。然后进入终端,依次输入
  tar -xzvf ns-allinone-2.35.tar.gz
  cd ns-allinone-2.35
  ./install
  不出意外的话,这一部分肯定是要出现各种各样的问题的,比如我出现的问题是:
  
  linkstate/ls.h:137:27: note: declarations in dependent base ‘std::map<int, LsIdSeq, std::less<int>, std::allocator<std::pair<const int, LsIdSeq>>>’ are not found by unqualified lookup
  linkstate/ls.h:137:27: note: use ‘this->erase’ instead
  make: *** [linkstate/ls.o] Error 1
  Ns make failed!
   编辑ns-2.35/linkstate/ls.h,即
  gedit ns-2.35/linkstate/ls.h
  将第137行的代码由
  void eraseAll() { erase(baseMap::begin(), baseMap::end()); }
  改为
  void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }
  也就是把erase用this->erase替换掉就好了。
  再次执行./install就可以安装成功了。
  因为每个人的计算机不一样所以出现的问题也可能不一样所以建议大家出现问题去用google去查。
  4.配置环境变量
  如果安装成功,终端会提示配置环境变量,包括PATH,LD_LIBRARY_PATH,TCL_LIBRARY三种环境变量。
  重新打开一个终端,输入:
  sudo gedit .bashrc
  在文件最后添加如下代码:
  
  export PATH=$PATH:/home/xxx/ns-allinone-2.35/bin:/home/xxx/ns-allinone-2.35/tcl8.5.10/unix:/home/xxx/ns-allinone-2.35/tk8.5.10/unix
  export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/xxx/ns-allinone-2.35/otcl-1.14:/home/xxx/ns-allinone-2.35/lib
  export TCL_LIBRARY=$TCL_LIBRARY:/home/xxx/ns-allinone-2.35/tcl8.5.10/library
//注意两个环境变量路径之间要用冒号:隔开
  
  然后运行:
  source .bashrc
  就完成了环境变量的配置。
  5.安装完成的验证
  重新打开一个终端,输入:
  ns
  如果出现%就证明ns2已经安装成功了。
  如果没有出现%,可以重新在终端输入:
  source .bashrc
ns
  这时候应该就完美的出现了%,证明ns2应经安装好了。
  6.实例example
  在终端输入:
  cd ns-allinone-2.35/ns-2.35/tcl/ex
  ns example.tcl
  如果出现了数据,证明ns2运行正常。
  再输入
  ns simple.tcl
  如果出现nam的控制窗口和帮助屏,则表示nam安装成功。可以在nam控制窗口进行动画演示。自此,ns2.35完全安装成功。
  
  Nam 无法启动
  
  进入nam目录:cd ns-allinone-2.35/nam-1.15
进入后sudo ./configure,然后sudo make
最后sudo make install
命令行输入nam弹出nam console说明nam安装成功。
注意:如果通过“sudo apt-get install nam”安装的nam,执行nam命令会报异常
“段错误,核心文件已转储”
遇到该问题的网友可以“sudo apt-get remove--purge nam”卸载nam及其配置后按Step6安装。
  将tcp协议分组和延时用gnuplot显示出来,先安装gnuplot :sudo apt-get install gnuplot -x11
  然后gawk -f exmple.tcl out.tr > pc(先安装gawk命令)
  终端下:
  gnuplot
  plot 'pc' with lines显示出界面。
  

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-387194-1-1.html 上篇帖子: SQL Server会话KILL不掉,一直处于KILLED /ROLLBACK状态情形浅析 下篇帖子: 淘淘商城图片上传功能的实现
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表