物聯網模擬 ns-allinone-2.35 安裝教程 ubuntu16.04下安裝 與使用
阿新 • • 發佈:2019-02-15
2.下載ns-allinone-2.35 最好在官網下載 https://www.isi.edu/nsnam/ns/ns-build.html (可以用ubuntu自帶瀏覽器下載)或者下到window上 然後用 遠端工具傳到linux上面
3.開啟ubuntu終端 然後 更新一下 記得 使用 sudo
$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
今天我嘗試了一下 看機器 大概15分鐘吧
3.然後解壓一下
使用命令 tar -xzvf ns-allinone-2.35.tar.gz
然後 cd ns-allinone-2.35
先不要進入安裝 如果安裝不出意外會有很多錯誤 需要改一個配置檔案
意外是這樣的 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!
修改一下檔案就好了
cd ns-2.35/linkstate/ls.h
然後
sudo nano ns-2.35/linkstate/ls.h
找到137行的問題 然後把程式碼替換一下
原來的程式碼
void eraseAll() { erase(baseMap::begin(), baseMap::end()); }
修改成
void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }
其實吧 就是 對一個this
然後cd .. 兩下
進入 ns-allinone-2.35,目錄下面
然後 sudo ./install
看機器配置 大概2分鐘左右吧
到目前為止 大概做了 60%
下面配環境變數 很重要的步驟
首先 cd / 根目錄
然後 sudo ~./bashrc
在後面新增
export PATH=$PATH:/home/這個自己去修改 根據你ns所在的目錄
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
然後儲存一下 或者可以reboot重啟
或者 source .bashrc
接下來驗證一下
輸入ns
下面如果出現% 現在 就基本成功了 離勝利還有一步
你然後嘗試一下 ns 自帶的example
例項example
在終端輸入:
cd ns-allinone-2.35/ns-2.35/tcl/ex
ns example.tcl
如果出現了資料,證明ns2執行正常。
再輸入
ns simple.tcl
如果出現動畫 就安裝成功了
but很多我今天發現會出現許可權問題 然後我 sudo su 發現了一些問題
然後我用超級使用者make了一下就好了 方法如下
cd ns-allinone-2.35/ns-2.35
然後執行
sudo make install
然後cd /ns-allinone-2.35/nam-1.15
sudo make install
然後會顯示755的許可權 大功告成了 哈哈哈
然後就是可以嘗試
cd ns-allinone-2.35/ns-2.35/tcl/ex
ns example.tcl
如果出現了資料,證明ns2執行正常。
再輸入
ns simple.tcl
如果出現動畫 就安裝成功了
記得以後使用先 sudo su 使用者 就可以進行模擬了