Ubuntu16.04安装ns-allinone-2.35
2017-03-28 21:50
393 查看
> 前言:
虽然ns3已经出来好多年了,但是鉴于ns2的资料相对多些,目前大多数论文中用的仿真器还是ns2比较多。今年Ubuntu已经更新到了16.04或者16.10,网上的一些教程略微需要改动,鉴于此,总结了下面的安装步骤,其中会提到运行中常出现的问题以及解决方法。参考的博客网址有:Ubuntu 15.10安装ns2.35+nam
SUMO仿真快速入门系列四:Ubuntu 12.04 安装ns2.35
> 步骤一:更新一下系统的安装包,
这个有的时候很有必要,Ubuntu的源有时会莫名其妙的不能用了sudo apt-get update #更新源列表
sudo apt-get upgrade #更新已经安装的包
sudo apt-get dist-upgrade #更新软件,升级系统
> 步骤二:安装ns2运行时需要的三个依赖包
sudo apt-get install build-essentialsudo apt-get install tcl8.5 tcl8.5-dev tk8.5 tk8.5-dev #for tcl and tk
个人说明一下:安装这个依赖包后,在以后调试涉及./configure时会提示找不到tcl的路径,解决方法是 ./configure –with-tcl-ver=8.5
sudo apt-get install libxmu-dev libxmu-headers #for nam
> 步骤三:下载安装包并编译安装
ns2.35官网下载地址建议下载后直接放在目录/home/用户名/,若是放在其他比如usr/等下面,必须切换root账号才能进行操作,编辑时会出现各种头疼的操作
tar xvfz ns-allinone-2.35.tar.gz #这个可以图形化操作
cd ns-allinone-2.35 #这个可以图形化操作
./install #进行安装
第一次安装报错:
linkstate/ls.h:137:20: note: use ‘this->erase’ instead
make: * [linkstate/ls.o] Error 1
Ns make failed!
修改ls文件,位置是:ns-2.35/linkstate/ls.h
第137行
void eraseAll() { erase(baseMap::begin(), baseMap::end()); }
改为:void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }
保存后,重新然后执行 ./install #重新安装顺利完成
这是因为ubuntu16.04的gcc编译版本太高,而ns2.35是2011年发布的,当时ubuntu的gcc版本比较低的,需要注意的是gcc4.4版本后,有些格式不能向下兼容,好吧,这个问题很是头疼,最笨也是最直接的方法就是直接改动源码,把出现问题的代码部分改成能被高版本gcc编译的格式,如上所示:
> 步骤四:配置环境变量
修改当前用户环境变量(对应的文件为’/home/用户名’中的.bashrc,并非’/ns-allinone-2.35’底下的空白.bashrc)gedit ~/.bashrc
直接在文档的最后面加上以下环境变量(把用户名改成你的就行):
export NS_HOME=/home/用户名/ns-allinone-2.35
export PATH=$PATH:$NS_HOME/bin:$NS_HOME/tcl8.5.10/unix:$NS_HOME/tk8.5.10/unixexport
LD_LIBRARY_PATH=$NS_HOME/otcl-1.14:$NS_HOME/lib
export TCL_LIBRARY=$NS_HOME/tcl8.5.10/library
> 步骤五:验证ns是否安装成功
关闭终端,重启终端,输入ns,出现%,说明ns2安装成功注意:环境变量配错的话,会提示“程序“ns”尚未安装。 此时请勿使用以下命令安装:
sudo apt-get install ns2
应该继续在步骤4中修改环境变量!
> 步骤六:测试ns并验证nam是否安装成功
测试:cd ns-allinone-2.35/ns-2.35/tcl/ex/
ns simple.tcl
倘若弹出动画演示框,则证明ns完全安装正确,下面的问题也不需要看了,至此结束。
倘若提示nam没有安装(Ubutnu16.04没有出现这个问题)
进入nam目录:cd ns-allinone-2.35/nam-1.15
进入后 ./configure –with-tcl-ver=8.5
然后 make
最后 make install
命令行输入nam弹出nam console说明nam安装成功。
注意:如果通过“sudo apt-get install nam”安装的nam,执行nam命令会报异常
“段错误,核心文件已转储”
遇到该问题的网友可以“sudo apt-get remove –purge nam”卸载nam及其配置后按Step6安装。
相关文章推荐
- 物联网仿真 ns-allinone-2.35 安装教程 ubuntu16.04下安装 与使用
- Ubuntu10.04下安装ns-allinone-2.35
- 在win7_64bit + ubuntu-12.04-desktop-amd64+VMware-workstation-full-10.0.1-1379776平台上安装ns-allinone-2.35
- ubuntu14.04上安装ns-allinone-2.35
- ubuntukylin14安装ns-allinone-2.35教程(虚拟机ubuntu同理)
- ns-allinone-2.35在ubuntu14.04环境下的安装
- linux(版本是红帽企业版5)下安装ns2(版本是ns-allinone-2.35)
- Ubuntu10.04下装NS-allinone-2.35
- ubuntu12.04下安装ns-allinone-2.35
- ubuntu 16.04 上安装OpenStack Mitaka (all-in-one):keystone 安装与配置
- Ubuntu 11.04下安装ns-allinone-2.34.tar.gz
- Ubuntu 12.04 +ns-allinone-2.34 安装教程
- Ubuntu下安装ns-allinone-2.34
- Ubuntu 12.04 +ns-allinone-2.34 安装教程
- ubuntu 16.04 上安装OpenStack Mitaka (all-in-one):Glance 安装与配置
- ubuntu 16.04 上安装OpenStack Mitaka (all-in-one):环境准备
- 在ubuntu 11.10下安装ns2-allinone-2.35.tar.gz
- Ubuntu下安装ns-allinone-2.35.tar.gz
- ubuntu 16.04 上安装OpenStack Mitaka (all-in-one):Nova 安装与配置