Step1: 更新系統
sudo apt-get update #更新源列表
sudo apt-get upgrade #更新已經安裝的包
sudo apt-get dist-upgrade #更新軟件,升級系統
Step2:安裝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
Step3:下載安裝包,並複製到須要安裝的目錄
官網下載地址: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 #從新安裝順利完成
Step4:配置環境變量
修改當前用戶環境變量(對應的文件爲'/home/用戶名'中的.bashrc,並不是'/ns-allinone-2.35'底下的空白.bashrc)
gedit ~/.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"
Step5:驗證ns2安裝
關閉終端,重啓終端,輸入ns,出現%,說明ns2安裝成功
注意:環境變量配錯的話,會提示
「程序「ns」還沒有安裝。 您能夠使用如下命令安裝:
sudo apt-get install ns2」
請勿經過該命令安裝,仍是回到Step4修改環境變量吧!
Step6:安裝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安裝。
Step7:測試simple.tcl
cd ns-allinone-2.35/ns-2.35/tcl/ex/
ns simple.tcl
顯示下圖則所有安裝成功!bash