Ubuntu 16.04 安装ns2.35+nam

总结出以下安装步骤

1: 更新源
    sudo apt-get update #更新源列表
    sudo apt-get upgrade #更新已经安装的包
    sudo apt-get dist-upgrade #更新软件,升级系统
2:安装ns2需要的包
    sudo apt-get install build-essential
    sudo apt-get install tcl8.5 tcl8.5-dev tk8.5 tk8.5-dev #for tcl and tk
    sudo apt-get install libxmu-dev libxmu-headers #for nam
3:下载安装包,并安装  官网下载地址:http://www.isi.edu/nsnam/ns/,这里下载allinone

    tar xvfz ns-allinone-2.35.tar.gz
    cd ns-allinone-2.35
    sudo ./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()); }

    保存后 sudo ./install #重新安装顺利完成

4:配置环境变量
    修改当前用户环境变量(对应的文件为’/home/用户名’中的.bashrc,并非’/ns-allinone-2.35’底下的空白.bashrc)

    gedit ~/.bashrc     或者  vim  ~/.bashrc

    在文件末尾添加
  /# add path for ns2

  export PATH=”$PATH:/home/安装文件夹名/ns-allinone-2.35/bin:/home/安装文件夹名/ns-allinone-2.35/tcl8.5.10/unix:/home/安装文件夹名/ns-allinone-2.35/tk8.5.10/unix”
  export LD_LIBRARY_PATH=”$LD_LIBRARY_PATH:/home/安装文件夹名/ns-allinone-2.35/otcl-1.14:/home/安装文件夹名/ns-allinone-2.35/lib”
  export TCL_LIBRARY=”$TCL_LIBRARY:/home/安装文件夹名/ns-allinone-2.35/tcl8.5.10/library”
5:验证ns2安装是否成功
    关闭终端,重启终端,输入ns,出现%,说明ns2安装成功
    注意:环境变量配错的话,会提示

    程序“ns”尚未安装。 您可以使用以下命令安装:
    sudo apt-get install ns2”
    请勿通过该命令安装,还是回到Step4修改环境变量吧!
6:安装nam
    进入nam目录:cd ns-allinone-2.35/nam-1.15
    进入后sudo ./configure,然后sudo make

    注意,此处会出错
    提示为“installation of tcl seems incomplete or can’t be found automatically”等字样
  解决方法:
    sudo ./configure –with-tcl=/home/用户目录/文件存放目录/ns-allinone-2.35/tcl8.5.10 –with-tcl-ver=8.5.10 –with-tk=/home/用户目录/文件存放目录/ns-allinone-2.35/tk8.5.10 –with-tk-ver=8.5.10
    最后sudo make install

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

    注意:如果通过“sudo apt-get install nam”安装的nam,执行nam命令会报异常
    “段错误,核心文件已转储”
    遇到该问题的网友可以“sudo apt-get remove –purge nam”卸载nam及其配置后按6安装。

7:测试simple.tcl
    cd ns-allinone-2.35/ns-2.35/tcl/ex/
    ns simple.tcl

显示出实验图则全部安装成功!

Ubuntu 16——安装——ns2.35和nam的更多相关文章

  1. Ubuntu 16安装GPU版本tensorflow

    pre { direction: ltr; color: rgb(0, 0, 0) } pre.western { font-family: "Liberation Mono", ...

  2. Ubuntu14.04下安装ns2.35

    我选择的版本是2.35最新版本,安装环境是Ubuntu 14.04. 1.下载ns2的安装包,这里我选择的是ns-allinone-2.35.tar.gz压缩格式的all in one安装包,all ...

  3. 在ubuntu下安装ns2-allinone-2.35.tar.gz

    1.软件下载 首先先下载ns-allinone-2.35.tar.gz (下载路径http://sourceforge.net/projects/nsnam/files/),将其放到你/home/my ...

  4. ubuntu 14.04 ns2.35 ***buffer overflow detected **: ns terminated解决办法

    1.按照如下教程安装 Install With Me !: How to Install NS-2.35 in Ubuntu-13.10 / 14.04 (in 4 easy steps) 2.运行一 ...

  5. Ubuntu 16 安装odoo10 实录

    安装Ubuntu 16,省略 安装时,默认用户名为 odoo ubuntu 16开始 使用 systemd 管理服务,但是systemd 兼容 sysv init 脚本 下载 odoo源码 从 htt ...

  6. Ubuntu12.04 LTS 32位 安装ns-2.35

    ubuntu12.04lts 32-bit默认采用gcc 4.6和g++4.6,而ns的最新版本ns 2.3.5也采用了相同到版本,所以这方面不会有版本不同到问题 收回上面这句话..../valida ...

  7. 【转】Ubuntu 16 安装 python 依赖出现 error: command 'i686-linux-gnu-gcc' failed with exit status 1

    问题 在 Ubuntu 下安装 python 依赖的时候出现以下错误 build/temp.linux-i686-3.5/_openssl.c:498:30: fatal error: openssl ...

  8. ubuntu 16 安装django nginx uWSGI

    参考 https://www.digitalocean.com/community/tutorials/how-to-serve-django-applications-with-uwsgi-and- ...

  9. Ubuntu 16 安装ElasticSearch

    首先安装Java,参见博客:http://www.cnblogs.com/1zhk/p/6056406.html 下载ElasticSearch安装包 curl -L -O https://artif ...

随机推荐

  1. php的trie_filter扩展安装敏感词查找

    #编译libiconv ./configure make make install #编译libdatrie-0.2.11 ./configure LDFLAGS=-L/usr/local/lib L ...

  2. 网络通信实验(1)STM32F4 以太网简介

    STM32F4 以太网简介 STM32F407 芯片自带以太网模块,该模块包括带专用 DMA 控制器的 MAC 802.3(介质访问控制)控制器,支持介质独立接口 (MII) 和简化介质独立接口 (R ...

  3. Eclipse使用相关配置

    问题描述:The word is not correctly spelled问题分析:eclipse校验单词拼写造成,出现在配置文件中,会影响到程序的正常执行解决方案:在eclipse下的Window ...

  4. JavaSE基础知识(5)—面向对象(方法的重写与重载)

    一.重写 1.说明 子类对继承过来的父类的方法进行改造,这种现象称为方法的重写或覆盖或覆写(Override) 2.要求 方法签名完全一致,jdk5.0之后,允许返回类型可以是子类类型,权限修饰符可以 ...

  5. vuex中store保存的数据,刷新页面会清空

    用vuex,项目中需要记录一些状态,来判断页面是否为登录状态和页面是否可被编辑,此时用到了vuex中的store来存储一个状态. //首先 安装vuex npm install vuex --save ...

  6. redis get乱码

  7. Chart Parser 中 Earley's 算法的应用

    1. 基本概念 1.1 状态 state 上下文无关文法规则 圆点 · (左边是已分析的,右边是未分析的:点在最右端表示完成状态,否则为未完成状态) 状态的起止位置 1.2 基本操作/算子 opera ...

  8. gooflow学习笔记

    前端jqury脚本实现流程设计,兼容目前主流浏览器 gooflow 默认属性节点只有:id,name,top,left,width,height,type (各个版本不同,属性节点有所增加),但是这些 ...

  9. java tcp ip网络编程(二) 套接字的基本使用

    ##基本套接字的使用 linux系统把网络io抽象成socket,对网络的编程就是对socket的编程. java把套接字抽象成类似的类 InetAddress SocketAddress 识别jav ...

  10. 将字符串向hdfs中写入,出现中文乱码!

    jsonObject.toString():需要处理的json对象转成的字符串 "/testData/ExtractKWByOnce.txt":写入hdfs中的目标路径 try { ...