由於最近想要再搞搞網絡仿真實驗,需要在Ubuntu上使用NS2網絡仿真器,本以爲只需要Download+install就能ok。誰知道問題賊多。
- 大多數提及問題解決的都說道ease()改爲this->ease(),由於先看過不少內容,這個在安裝前就改了,所以也沒出現這個問題。
- 實際上最頭疼的是你./install等了好幾分鐘後得到結果是Ns make failed,是由於ns_2.35/mdart/mdart_adp.cc 中的hash ambiguous,這就讓我矇蔽了,去百度一下大都是說第一種問題,然後改了就能success,然俄根本不是這麼回事兒阿。難道要循環刪除->./install?這一天過去了也沒結果阿
最後還得去外面找找,後來發現有人說是這個ns-2.35是2011年開發好的,當時使用的是g++4,對與g++6以上就會出現編譯錯誤,於是建議使用gcc4.8,即在命令行下執行
sudo apt install gcc-4.8 g++4.8
待安裝完成後進入nc-allinone-2.35目錄下執行
export CC=gcc-4.8 CXX=g++4.8 && ./install
這樣將使用gcc4版本對相關文件進行編譯(而最初安裝的是gcc7,所以報錯),如果順利的話,你得到將是這樣
當然要填寫的路徑信息要根據你自己的配置來填寫了。尤其需要注意的是,配置路徑後需要重啓之後纔會生效。如果沒有重啓就執行了ns或者nam提示讓你安裝的話,請不要安裝。重啓!
跟大部分教程一樣,我也是先安裝了幾個依賴模塊
sudo apt-get install build-essential
sudo apt-get install tcl8.5 tcl8.5-dev tk8.5 tk8.5-dev
sudo apt-get install libxmu-dev libxmu-headers
總結下來一句話:使用GCC4.8,G++4.8。希望能幫到有相同問題的你。
從上午高到現在。根據以往經驗,安好了後續仍會有不少問題。
從SourceForge下載安裝包也挺不容易,當然用點積分也行啊。你也可以點下面的鏈接
免費下載ns-allinone-2.35,密碼: 3wfu