Ubuntu 17.10 安装NS图文教程

2024-03-08 05:40

本文主要是介绍Ubuntu 17.10 安装NS图文教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

注意:

不要使用sudo apt-get install ns2 

 不要使用sudo apt-get install nam

 1 NS2 简介

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

2 NS2 安装

     ns版本有很多,这里我们选择ns2.35版本。下载地址:https://www.isi.edu/nsnam/ns/ns-build.html 最好复制该链接粘贴到新页面去打开,直接点击可能打不开。

1.     下载NS-2

找到如下页面,点击第一个most rencent release链接

    ns-2

    Download source:

  • most recent release (ns-2.35 released Nov 4 2011)
  • daily snapshot,
  • anonymous cvs (module "ns-2").

There may be known problems with the current version of ns; please check the ns installation problems web page for patches.

2. 更新系统安装包

       1) sudo apt-get  update          #更新源列表(不要改动sources.list文件)

       2) sudo apt-get upgrade          #更新已经安装的包

       3) sudo apt-get dist-upgrade     #更新软件,升级系统

3.安装NS2运行时需要的三个依赖包

       1) sudo apt-get install build-essential #(不要更改最初sources.list的源地址)
       2) sudo apt-get install tcl8.5 tcl8.5-dev tk8.5 tk8.5-dev #(注意版本)
安装这个依赖包后,在以后调试涉及./configure时会提示找不到tcl的路径,解决方法是 ./configure –with-tcl-ver=8.5

       3) sudo apt-get install libxmu-dev libxmu-headers  #for nam

4. 降级Ubuntu中gcc/g++的版本,需要进入/usr/bin目录下进行此操作

       1)通过gcc -v ,g++ -v 来查看当前gcc和g++版本。如下图所示,因为我已经降低国系统中的gcc和g++版本,所以系统中当前版本为gcc4.8.5和g++4.8.5(原来是7.8版本)。

        2)使用如下命令降低gcc,g++版本

             sudo apt-get install gcc-4.8

             sudo apt-get install g++-4.8

        3)安装完毕之后在/usr/bin目录下输入

             ls -l gcc*        #可以查看到当前的gcc链接(第一行位置),可以发现版本较高,于是我们需要修改为较低的

             sudo mv gcc gcc.bak      

             sudo ln -s gcc-4.8 gcc

             修改完gcc接着修改g++

             ls -l gcc*        #同样可以查看到当前的g++链接是较高版本,需要将其改为较低的

             sudo mv g++ g++.bak 

             sudo ln -s g++-4.8 g++

        4)使用gcc -v&&g++ -v查看gcc和g++版本号

          这时,应该可以看到如下图所示的gcc和g++版本号

4. 将下载好的ns-2.35放到/home/(用户名目录)/下(我设置的目录是/home/lwt/simulation/)

      1)tar xvfz ns-allinone-2.35.tar.gz     #解压文件到当前目录

      2)cd ns-allinone-2.35 #进入到解压文件目录下

5. 打开ns-alinone-2.35/ns-2.35/linkstate/ls.h 文件

      1)找到第137行(可以使用vim编辑器打开,如果打开文件后不显示行号可以使用:set number命令显示行号)

     

将 void eraseAll() { erase(baseMap::begin(), baseMap::end()); }改为:void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }保存(:wq)后退出

      2)进入ns-alinone-2.35目录下(在上一步基础上使用两次cd ..命令)

           ./install #进行安装ns-2.35

6. 配置环境变量

      1)gedit ~/.bashrc 命令编辑.bashrc文件,将下面的语句直接复制进去(/home/用户名/ 路径需要使用你自己解压的ns-2.35路径。ubuntu17.10 gedit命令可能不能用)
 

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/unix
export LD_LIBRARY_PATH=$NS_HOME/otcl-1.14:$NS_HOME/lib  
export TCL_LIBRARY=$NS_HOME/tcl8.5.10/library 

 如图所示

7. 打开新终端(ctrl-alt-t)

      1) cd /home/用户名/ns-allinone-2.35/ns-2.35/tcl/ex/

      2) ns simple.tcl

出现如下页面,则ns正确安装。

8. 若以上步骤失败,则尝试如下方法

使用第二种设置环境

 export NS_HOME=/home/用户名/ns-allinone-2.35 
 PATH=$PATH:$NS_HOME/bin:$NS_HOME/tcl8.5.10/unix:$NS_HOME/tk8.5.10/unix 
 LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$NS_HOME/otcl-1.14:$NS_HOME/lib 

 TCL_LIBRARY=$TCL_LIBRARY:$NS_HOME/tcl8.5.10/library

 

1)gedit  ~/.bashrc    #换一个环境变量方案,重复上面步骤

2)cd ns-allinone-2.35/nam-1.15     #进入nam目录 
3)./configure --with-tcl-ver=8.5   #重新配置
4) sudo  make                             #重新编译源码

5)sudo  make install                     #重新安装

命令行输入nam弹出nam console说明nam安装成功。

步骤九: 重复步骤七

这篇关于Ubuntu 17.10 安装NS图文教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/786198

相关文章

全网最全Tomcat完全卸载重装教程小结

《全网最全Tomcat完全卸载重装教程小结》windows系统卸载Tomcat重新通过ZIP方式安装Tomcat,优点是灵活可控,适合开发者自定义配置,手动配置环境变量后,可通过命令行快速启动和管理... 目录一、完全卸载Tomcat1. 停止Tomcat服务2. 通过控制面板卸载3. 手动删除残留文件4.

在Ubuntu上打不开GitHub的完整解决方法

《在Ubuntu上打不开GitHub的完整解决方法》当你满心欢喜打开Ubuntu准备推送代码时,突然发现终端里的gitpush卡成狗,浏览器里的GitHub页面直接变成Whoathere!警告页面... 目录一、那些年我们遇到的"红色惊叹号"二、三大症状快速诊断症状1:浏览器直接无法访问症状2:终端操作异常

Python的pandas库基础知识超详细教程

《Python的pandas库基础知识超详细教程》Pandas是Python数据处理核心库,提供Series和DataFrame结构,支持CSV/Excel/SQL等数据源导入及清洗、合并、统计等功能... 目录一、配置环境二、序列和数据表2.1 初始化2.2  获取数值2.3 获取索引2.4 索引取内容2

python依赖管理工具UV的安装和使用教程

《python依赖管理工具UV的安装和使用教程》UV是一个用Rust编写的Python包安装和依赖管理工具,比传统工具(如pip)有着更快、更高效的体验,:本文主要介绍python依赖管理工具UV... 目录前言一、命令安装uv二、手动编译安装2.1在archlinux安装uv的依赖工具2.2从github

Ubuntu向多台主机批量传输文件的流程步骤

《Ubuntu向多台主机批量传输文件的流程步骤》:本文主要介绍在Ubuntu中批量传输文件到多台主机的方法,需确保主机互通、用户名密码统一及端口开放,通过安装sshpass工具,准备包含目标主机信... 目录Ubuntu 向多台主机批量传输文件1.安装 sshpass2.准备主机列表文件3.创建一个批处理脚

C#实现SHP文件读取与地图显示的完整教程

《C#实现SHP文件读取与地图显示的完整教程》在地理信息系统(GIS)开发中,SHP文件是一种常见的矢量数据格式,本文将详细介绍如何使用C#读取SHP文件并实现地图显示功能,包括坐标转换、图形渲染、平... 目录概述功能特点核心代码解析1. 文件读取与初始化2. 坐标转换3. 图形绘制4. 地图交互功能缩放

JDK8(Java Development kit)的安装与配置全过程

《JDK8(JavaDevelopmentkit)的安装与配置全过程》文章简要介绍了Java的核心特点(如跨平台、JVM机制)及JDK/JRE的区别,重点讲解了如何通过配置环境变量(PATH和JA... 目录Java特点JDKJREJDK的下载,安装配置环境变量总结Java特点说起 Java,大家肯定都

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

RabbitMQ 延时队列插件安装与使用示例详解(基于 Delayed Message Plugin)

《RabbitMQ延时队列插件安装与使用示例详解(基于DelayedMessagePlugin)》本文详解RabbitMQ通过安装rabbitmq_delayed_message_exchan... 目录 一、什么是 RabbitMQ 延时队列? 二、安装前准备✅ RabbitMQ 环境要求 三、安装延时队

Ubuntu如何升级Python版本

《Ubuntu如何升级Python版本》Ubuntu22.04Docker中,安装Python3.11后,使用update-alternatives设置为默认版本,最后用python3-V验证... 目China编程录问题描述前提环境解决方法总结问题描述Ubuntu22.04系统自带python3.10,想升级