前言:

NS2是指 Network Simulator version 2,NS(Network Simulator) 是一种针对网络技术的源代码公开的、免费的软件模拟平台,研究人员使用它可以很容易的进行网络技术的开发,而且发展到今天,它所包含的模块几乎涉及到了网络技术的所有方面。所以,NS成了目前学术界广泛使用的一种网络模拟软件。此外,NS也可作为一种辅助教学的工具,已被广泛应用在了网络技术的教学方面。因此,目前在学术界和教育界,有大量的人正在使用或试图使用NS

教程:

步骤1、

到网站http://www.isi.edu/nsnam/ns/ns-build.html下载ns,如下图 

下载完成后解压,比如我是解压到了/home/l用户名/ns/

步骤2、

在命令行里进入管理员权限 
然后依次键入以下命令: 
apt-get update //更新源列表 
//安装依赖包 
apt-get install tcl8.5-dev tk8.5-dev 
apt-get install build-essential autoconf automake 
apt-get install perl xgraph libxt-dev libx11-dev libxmu-dev step

步骤3、

修改 ns-allinone-2.35/ns-2.35/linkstate 中 ls.h 文件的代码 , 
将 void eraseAll() { erase(baseMap::begin(), baseMap::end()); } 
改为: void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }

步骤4、

在命令行中 
ls /usr/bin/gcc* //查看系统已经安装的 gcc 版本。如下图 

输入以下命令:

#export CXX=g++-5 //因为我的是gcc-5,你要根据上面查到的版本自行改动 
#echo CCechoCCechoCXX //查看全局变量导入成功了没有

步骤5、

在命令行里进入你下载的文件,比如我的是/ns/ns-allinone-2.35 
然后输入 
sudo ./install //开始进行安装

安装过程:

步骤6、

安装成功后会提醒你设置环境变量,根据命令行的提示设置好环境变量。 
然后重启。

方法:

#sudo gedit ./bashrc
在文件尾加入:
export PATH="$PATH:/home/用户名/ns/bin:/home/用户名/ns/tcl8.5.10/unix:/home/用户名/ns/tk8.5.10/unix"

export LD_LIBRARY_PATH="$LD_LIBRARY_PATH:/home/用户名/ns/otcl-1.14:/home/用户名/ns/lib"

export TCL_LIBRARY="$TCL_LIBRARY:/home/用户名/ns/tcl8.5.10/library"

提示如下:

步骤7、

执行命令:sudo apt-get install ns2 -y

步骤8、

打开命令行,输入ns,若出现%则为成功,如下图 

参考文章:https://blog.csdn.net/liyongqi_/article/details/71774170

Ubuntu中NS2安装详细教程的更多相关文章

  1. MySQL5.7.25解压版安装详细教程

    MySQL5.7.25解压版安装详细教程 安装步骤: 1.首先,你要下载MySQL解压版,下载地址:https://www.mysql.com/downloads/,图解: 2.解压安装包,根据自己的 ...

  2. (转载)Centos下Elasticsearch安装详细教程

    原文地址:http://www.cnblogs.com/sunny1009/articles/7874251.html Centos下Elasticsearch安装详细教程 1.Elasticsear ...

  3. 今天带来Pycharm安装详细教程

    Python环境搭建—安利Python小白的Python和Pycharm安装详细教程 人生苦短,我用Python.众所周知,Python目前越来越火,学习Python的小伙伴也越来越多.最近看到群里的 ...

  4. Python环境搭建—安利Python小白的Python安装详细教程

    人生苦短,我用Python.众所周知,Python目前越来越火,学习Python的小伙伴也越来越多.最近看到群里的小伙伴经常碰到不会安装Python或者不知道去哪下载Python安装包等系列问题,为了 ...

  5. Centos下Elasticsearch安装详细教程

    Centos下Elasticsearch安装详细教程 1.Elasticsearch简介 ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于 ...

  6. 面系那个对象开发原则.高内聚.低耦合+Python安装详细教程+print输出带颜色的方法

    面系那个对象开发原则.高内聚.低耦合 软件设计中通常用耦合度和内聚度作为衡量模块独立程度的标准.划分摸块的一个准则就是高内聚低耦合. 这是软件工程中的概念,是判断设计好坏的标准,主要是面向OO的设计, ...

  7. Python、 Pycharm、Django安装详细教程(图文)

    前言 这篇文章主要介绍了Python. Pycharm.Django安装详细教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧. ...

  8. Python环境搭建—安利Python小白的Python和Pycharm安装详细教程

    人生苦短,我用Python.众所周知,Python目前越来越火,学习Python的小伙伴也越来越多.最近看到群里的小伙伴经常碰到不会安装Python或者不知道去哪下载Python安装包等系列问题,为了 ...

  9. MySQL安装详细教程(数据库免安装版)

    MySQL安装详细教程(数据库免安装版)mysql-5.7.33-winx64.zip 一.软件下载 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,属于 Oracle 旗下产 ...

随机推荐

  1. GitHub的使用问题记录

    1. github如何收藏和关注? github 中的star作用:star 的作用是收藏,目的是方便以后查找. watch 的作用是关注,目的是等作者更新的时候,你可以收到通知.fork 的作用是参 ...

  2. C语言内存布局简记待补充

    C语言存储类型总结内存操作函数总结 用于自己学习和记录 1. void *memset(void *s, int c, size_t n); #include <string.h> 功能: ...

  3. [转]WPF中的ControlTemplate(控件模板)

    WPF中的ControlTemplate(控件模板)                                                                           ...

  4. 页面跳转不带 referrer的方法

    如果页面中包含了如下 meta 标签,所有从当前页面中发起的请求将不会携带 referer: <meta name="referrer" content="neve ...

  5. PhpStorm中terminal窗口字体修改

    在PhpStorm–File–Settings–Tools–Terminal中可以看到terminal调用的系统的cmd.exe程序 因此需要做的就是修改系统的cmd.exe中的字体,如下: CMD命 ...

  6. PHP中的符号 ->、=> 和 :: 的含义(用法)

    php新手经常碰到的问题,->.=> 和 :: 这三个家伙是什么分别都是做什么的啊!看着就很晕. 没关系,下面我们做一下详细的解释,如果你有C++,Perl基础,你会发现这些家伙和他们里面 ...

  7. ORACLE忘记sys密码

    1.win+R打开dos窗口cmd 2.输入 sqlplus/nolog出现 3.输入 conn / as sysdba 出现 4.修改密码 alter user 用户 identified by 新 ...

  8. POJ 1386&&HDU 1116 Play on Words(我以后再也不用cin啦!!!)

    Play on Words Some of the secret doors contain a very interesting word puzzle. The team of archaeolo ...

  9. Leetcode543.Diameter of Binary Tree二叉树的直径

    给定一棵二叉树,你需要计算它的直径长度.一棵二叉树的直径长度是任意两个结点路径长度中的最大值.这条路径可能穿过根结点. 示例 : 给定二叉树 1 / \ 2    3 / \ 4  5 返回 3, 它 ...

  10. odoo web controller

    Routing openerp.http.route(route=None, **kw) Decorator marking the decorated method as being a handl ...