Ubuntu17.10及以上版本如何安装ns2.35

因为ns2的资料相对较多,目前使用较多的版本为2011年的ns-allinone-2.35。

官方下载    https://www.isi.edu/nsnam/ns/ns-build.html

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

步骤一:更新系统的安装包

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

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

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

步骤二:安装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

步骤三:降级最新版本的Ubuntu中gcc/g++的版本(一定要到/usr/bin目录下完成)

可以通过gcc -v或g++ -v来查看当前的版本。最初系统版本为gcc-7,这里我们把它降低到gcc-4.8

1.sudo apt-get install gcc-4.8

2.sudo apt-get install g++-4.8

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

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

4.sudo mv gcc gcc.bak      

5.sudo ln -s gcc-4.8 gcc

修改完gcc接着修改g++

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

7.sudo mv g++ g++.bak 

8.sudo ln -s g++-4.8 g++

上面完毕之后再查看gcc和g++版本号:

10.gcc -v&&g++ -v        #可以看到gcc version 4.8.5

步骤四:将文件放在/home/(自己设置的用户名)/                    也就是直接点开home的那个文件夹,最好别放其他文件夹

1.tar xvfz ns-allinone-2.35.tar.gz     #可以直接鼠标右键解压当前目录

2.cd ns-allinone-2.35                       #打开解压后文件夹

步骤五:上面的ns-allinone-2.35中通过路径找到    ns-2.35/linkstate/ls.h     这个文件并以编辑文本的方式打开

1.    第137行 

    void eraseAll() { erase(baseMap::begin(), baseMap::end()); }

    改为:void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }

    保存(:wq)后退出

2 .    ./install                 #进行安装

步骤六:配置环境变量

1.    gedit  ~/.bashrc           #虚拟机中可以直接从下面复制粘贴进去

2.    环境变量方案一:    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 

       环境变量方案二:    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=$LD_LIBRARY_PATH:$NS_HOME/otcl-1.14:$NS_HOME/lib 

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

步骤七:打开一个新的终端输入

 1.        cd ns-allinone-2.35/ns-2.35/tcl/ex/

 2.        ns simple.tcl

          倘若弹出动画演示框,则证明ns完全安装正确,否则需要换一个环境变量进行尝试。

步骤八:(此步骤针对安装失败情况)

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安装成功。

步骤九: 重复步骤七即可



其他注意点:不要使用sudo apt-get install ns2 

                      不要使用sudo apt-get install nam

网友路过注意:现在CSDN灌水文章的东西比较厉害,大家没做实验不要灌水发文也不要关键细节不写,不然会浪费自己和别人时间

猜你喜欢

转载自blog.csdn.net/m0_37516824/article/details/80787558
今日推荐