【NS2】ubuntu安装和同时使用不同版本的ns2(转载)
有时候我们可能会遇到要同时安装两个ns版本的问题,比如我研究wimax/802.16,因为协议太复杂,用的是长庚大学和nist的wimax补丁。长庚大学的wimax补丁是在ns2.29下开发的,nist的wimax补丁虽说可以在多个ns版本上使用,但是在ns2.31上移植最简单。因此如果能够两个版本同时使用当然最好,事实上这也是可以实现的。
我们用./install安装好后,没有设置环境变量在终端上是不能使用ns命令的,除非你在ns-2~/文件夹下。呵呵,其实这样已经告诉我们一种解决两个版本同时使用的方案了,那就是不设置环境变量,当我们需要执行仿真代码a.tcl时,就指定ns命令的路径:/home/ns-allinone-2.29/ns-2.29/ns a.tcl或/home/all-inone-2.31/ns-2.31/ns a.tcl(我的ns是安装在home文件夹下)。
如果在.bashrc上设定其中一个版本的环境变量,比如说ns2.31则你的终端就可以使用ns2.31版本的ns命令了,另外一个则仍旧要指定路径全称才能使用。
有没有其它更好的办法?有的!其实我们的ns2安装后并不是安装到Linux系统内部了,ns命令是通过链接ns-allinone-2.~/ns-2~/ns实现的。这样就好办了,因为怕就怕在两个ns版本都设定了环境变量的情况下,我们在终端敲入ns命令只能识别其中一个罢了。知道了原委,我们就可以通过重新创建链接的方式来改变命令ns的名称,比如我们可以把2.29版本的ns命令改成ns2.29,把2.31版本的ns命令改成ns2.31,这样就可以避免名称的冲突了。
具体的实现是:假若我们先安装ns2.29,目录是/home/ns-allinone-2.29/,在linux下安装完ns2.29并设置好环境变量以后,打开ns-allinone-2.29/bin目录,用file ns查看链接关系,得到bin文件夹下的ns链接是链接到了:/home/ns-allinone-2.29/ns-2.29/ns上,你可以删除这个链接:rm ns,重建一个连接:ln -s /home/ns-allinone-2.29/ns-2.29/ns ns2.29,这样ns2.29版本的仿真命令就变成了ns2.29了,你再在终端敲入ns看看是不是一个未知命令呢?然后再敲个ns2.29看看,有个%号出来了吧!用这个方式重建nam和xgraph的链接,将它们改为nam2.29和xgraph2.29。接着安装ns2.31,环境变量可以同时设置好,完毕后你在终端敲ns命令其实就是执行2.31,nam和xgraph也是2.31的,为方便记忆,你也可以仿照上面的方式将ns、nam、xgraph的连接改成ns2.31、nam2.31、xgraph2.31。然后要执行脚本的话,想用ns2.29版本的ns就用:ns2.29 a.tcl就可以了。
note1:其他发行版我没有试过,不过应该是可以通过上述的方法安装多个ns版本的。
note2:增补一个说明,当为两个版本的ns2设置环境变量的时候,只有一个LD_LIBRARY_PATH的设置能够生效,一般是最先设置的一个,不过可能是2.29和2.31的库文件没有很多变化,其中一个的库另一个也能正常调用,在我的使用过程中没有发现问题。
【NS2】ubuntu安装和同时使用不同版本的ns2(转载)的更多相关文章
- 【Android 应用开发】 Ubuntu 安装 Android Studio (旧版本|仅作参考)
. 果断换Ubuntu了, Ubuntu的截图效果不好, 不能设置阴影 ... 作者 : 万境绝尘 转载请注明出处 : http://blog.csdn.net/shulianghan/article ...
- ceph学习笔记之十二 Ubuntu安装部署Ceph J版本
https://cloud.tencent.com/info/2b70340c72d893c30f5e124e89c346cd.html 安装Ubuntu系统安装步骤略过 拓扑连接: 一.安装前准备工 ...
- ubuntu安装多个qt版本--不同qt版本编译同一个程序时出现错误--解决方案
方法: 在ubuntu终端: # make clean //有Makefile文件的情况 # rm Makefile *.pro.user # qmake //有多个qt版本,最好指定qmake ...
- ubuntu 安装 2.10.x版本的scala
Ubuntu 14.04.1 LTS上默认的scala版本是2.9的,而最新版本的spark-1.3需要最低版本的scala版本为2.10.x,先使用apt-get remove scala将机器上的 ...
- ubuntu安装gcc不同的版本
服务器ubuntu14.04安装ns3.29中,显示gcc版本过低 使用apt-get安装失败,ubuntu14.04默认安装gcc4.8.4,无法下载更高级的gcc版本 先找到资料1,脚本尝试了,下 ...
- Ubuntu安装pyucharm的专业版本
看到了不错的教程,亲测有效. https://www.cnblogs.com/huozf/p/9304396.html
- Ubuntu 安装MTP驱动访问安卓设备(转载)
转自:http://www.ipython.me/ubuntu/how-to-connect-kindle-with-ubuntu.html 1.安装MTP工具集: mr_liu@i-it:~$ su ...
- docker 1.8+之后ubuntu安装指定版本docker-engine
这边记录ubuntu安装过程,首先是官网文档 If you haven’t already done so, log into your Ubuntu instance. Open a termina ...
- 基于Ubuntu Server 16.04 LTS版本安装和部署Django之(五):测试项目
基于Ubuntu Server 16.04 LTS版本安装和部署Django之(一):安装Python3-pip和Django 基于Ubuntu Server 16.04 LTS版本安装和部署Djan ...
随机推荐
- pytorch 多GPU训练过程中出现ap=0情况
原因可能是pytorch 自带的BN bug:安装nvidia apex 可以解决: $ git clone https://github.com/NVIDIA/apex $ cd apex $ pi ...
- Visual studio 编译错误 无法将文件obj\Debug\*.exe复制到bin\Debug\*.exe
问题: 错误 未能将“obj\Debug\Server.exe”复制到“bin\Debug\Server.exe”.超出了重试计数 10.失败. Server 错误 无法将文件“obj\Debug\S ...
- Ionic JPush极光推送 插件实例
1.需要去这里注册https://www.jiguang.cn 注册成功获取AppKey 备注填写应用包名规范点,在项目还要用那 2.创建ionic 项目 指定你注册时候的包名(假如:com.ioni ...
- _mysql_exceptions.IntegrityError: (1062, "Duplicate entry, Python操作MySQL数据库,插入重复数据
[python] view plain copy sql = "INSERT INTO test_c(id,name,sex)values(%s,%s,%s)" param = ...
- 个人站长建议直接封掉的IP地址列表
<Valve className="org.apache.catalina.valves.RemoteAddrValve" deny="164.100.196.21 ...
- springmvc jsp向controller传参,一直为null
怎么检查都无解 重启电脑好了
- io.spring.platform继承方式和import方式更改依赖版本号的问题
使用io.spring.platform时,它会管理各类经过集成测试的依赖版本号. 但有的时候,我们想使用指定的版本号,这个时候就需要去覆盖io.spring.platform的版本号. 前面的文章总 ...
- linux一些配置的记录
ssh 登录设置主机的别名 这样不用写那么多东西了 在/etc/ssh/ 下的ssh_config 和 sshd_config 两个文件 前一个是配置客户端的配置文件 另一个是服务器端的配置文件 主要 ...
- PYTHON网络爬虫与信息提取[BeautifulSoup](单元四)
1 简介 from bs4 import BeautifulSoup soup=BeautifulSoup(<p>data</p>,'html.parser') 2 基本元素 ...
- windows 操作系统下git报filename too long 处理方法
两种方法解决: 一是通过修改配置文件 [core] repositoryformatversion = filemode = false bare = false logallrefupdates = ...