最近为了项目需要用到NS2软件用于网络仿真实验,从Windows到Linux折腾了我将近一周的时间。在Windows装了卸、卸了装十几遍还是不成功,最后放弃了,回到了Linux系统,又折腾了两天终于安装+测试成功!(安装其实蛮顺利的,就是./validate的过程中一个bug卡了一天,第6步中会详细介绍!)
1. 安装前准备
下载ns2.35安装包(选择其它版本也OK)
https://nchc.dl.sourceforge.net/project/nsnam/allinone/ns-allinone-2.35/
下载后置于 /home/用户名/Documents目录下,并解压
cd /home/用户名/Documents
tar xvfz ns-allinone-2.35.tar.gz
cd ns-allinone-2.35
这里需要修改一下文件ls.h的内容(关键的一步,否则会报错)
vim ns-2.35/linkstate/ls.h
找到第137行 void eraseAll() { erase(baseMap::begin(), baseMap::end()); }
修改为:void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }
wq保存退出
2. 安装依赖
首先更新一下资源
sudo apt-get update #更新源列表
sudo apt-get upgrade #更新已经安装的包
sudo apt-get dist-upgrade #更新软件,升级系统
接下来安装ns需要的一些工具,这些但是后面安装ns时不可缺少的工具,否则会出错。
sudo apt-get install build-essential autoconf automake
sudo apt-get install tcl8.5-dev tk8.5-dev #tk(toolkit)是用来做图形用户界面(GUI)的工具,与tcl命令结合可以创建和操作GUI的窗口组件
sudo apt-get install perl xgraph libxt-dev libxmu-dev libx11-dev