ubuntu16.04下安裝NS-2.35以及對simple例的理解


  本人是在VMWare上安裝的ubuntu16.04版本,然后安裝NS2.35.

1.下載ns2的安裝包,這里我選擇的是ns-allinone-2.35.tar.gz壓縮格式的all in one安裝包,all in one 安裝包包含所有的組件,比較方便,另附下載地址:

http://www.isi.edu/nsnam/ns/ns-build.html

  

2.安裝前要先進行一些准備工作進行配置環境,輸入如下代碼:

$sudo apt-get install build-essential

$sudo apt-get install tcl8.4 tcl8.4-dev tk8.4 tk8.4-dev

$sudo apt-get install libxmu-dev libxmu-headers

3.ns2的解壓和安裝(也可以在ubuntu下聯網用命令下載安裝)

首先把ns-allinone-2.35.tar.gz復制到home/xxx的文件夾下。xxx代表是你自己設置的ns2文件夾。然后進入終端,依次輸入

tar -xzvf ns-allinone-2.35.tar.gz

cd ns-allinone-2.35

./install

不出意外的話,這一部分肯定是要出現各種各樣的問題的,比如我出現的問題是:

 

linkstate/ls.h:137:27: note: declarations in dependent base ‘std::map<int, LsIdSeq, std::less<int>, std::allocator<std::pair<const int, LsIdSeq>>>’ are not found by unqualified lookup

linkstate/ls.h:137:27: note: use ‘this->erase’ instead

make: *** [linkstate/ls.o] Error 1

Ns make failed!

 

 編輯ns-2.35/linkstate/ls.h,即

gedit ns-2.35/linkstate/ls.h

將第137行的代碼由

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

改為

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

也就是把erase用this->erase替換掉就好了。

再次執行./install就可以安裝成功了。

因為每個人的計算機不一樣所以出現的問題也可能不一樣所以建議大家出現問題去用google去查。

4.配置環境變量

如果安裝成功,終端會提示配置環境變量,包括PATH,LD_LIBRARY_PATH,TCL_LIBRARY三種環境變量。

重新打開一個終端,輸入:

sudo gedit .bashrc

在文件最后添加如下代碼:

 

export PATH=$PATH:/home/xxx/ns-allinone-2.35/bin:/home/xxx/ns-allinone-2.35/tcl8.5.10/unix:/home/xxx/ns-allinone-2.35/tk8.5.10/unix

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/xxx/ns-allinone-2.35/otcl-1.14:/home/xxx/ns-allinone-2.35/lib

export TCL_LIBRARY=$TCL_LIBRARY:/home/xxx/ns-allinone-2.35/tcl8.5.10/library
//注意兩個環境變量路徑之間要用冒號:隔開

 

然后運行:

source .bashrc

就完成了環境變量的配置。

5.安裝完成的驗證

重新打開一個終端,輸入:

ns

如果出現%就證明ns2已經安裝成功了。

如果沒有出現%,可以重新在終端輸入:

source .bashrc
ns

這時候應該就完美的出現了%,證明ns2應經安裝好了。

6.實例example

在終端輸入:

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

ns example.tcl

如果出現了數據,證明ns2運行正常。

再輸入

ns simple.tcl

如果出現nam的控制窗口和幫助屏,則表示nam安裝成功。可以在nam控制窗口進行動畫演示。自此,ns2.35完全安裝成功。

 

Nam 無法啟動

 

進入nam目錄:cd ns-allinone-2.35/nam-1.15
進入后sudo ./configure,然后sudo make
最后sudo make install
命令行輸入nam彈出nam console說明nam安裝成功。
注意:如果通過“sudo apt-get install nam”安裝的nam,執行nam命令會報異常
“段錯誤,核心文件已轉儲
遇到該問題的網友可以“sudo apt-get remove --purge nam”卸載nam及其配置后按Step6安裝。

 

將tcp協議分組和延時用gnuplot顯示出來,先安裝gnuplot :sudo apt-get install gnuplot -x11

然后gawk -f exmple.tcl out.tr > pc(先安裝gawk命令)

終端下:

gnuplot

plot 'pc' with lines顯示出界面。 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM