ubuntu16.04下安裝NS3.27

阿凡齊發表於2020-11-09

1 安裝庫

C++和python安裝,必裝
1) sudo apt-get install gcc g++ python
2) sudo apt-get install gcc g++ python python-dev
程式碼維護使用的原始碼版本控制管理系統
3) sudo apt-get install mercurial
執行python繫結ns-3-dev需要bazaar這個元件
4) sudo apt-get install bzr
除錯工具
5) sudo apt-get install gdb valgrind
支援更多精確WIFI模組的GNU Scientific Library (GSL)
6) sudo apt-get install gsl-bin libgsl-dev libgsl2 (重要,網上其他這句話多為錯誤)
模擬必需的詞法分析器和語法分析生成器,必裝
7) sudo apt-get install flex bison libfl-dev
一些Network Simulation Cradle (nsc) stacks需要gcc-3.4
8) sudo apt-get install g++ gcc //不用執行,已經是最新版
讀取pcap的packet traces,即包嗅探器
9) sudo apt-get install tcpdump
支援統計特性的資料庫軟體
10) sudo apt-get install sqlite sqlite3 libsqlite3-dev
xml的配置儲存軟體(requires libxml2 >= version 2.7)
11) sudo apt-get install libxml2 libxml2-dev
基於GTK的配置系統
12) sudo apt-get install libgtk2.0-0 libgtk2.0-dev
在虛擬機器and ns-3上測試
13) sudo apt-get install vtun lxc
支援utils/check-style.py 程式碼風格檢查程式
14) sudo apt-get install uncrustify
文件生成器,從原始碼中生成說明文件
15) sudo apt-get install doxygen graphviz imagemagick
16) sudo apt-get install texlive texlive-extra-utils texlive-latex-extra //很大 留到最後吧
17) sudo apt-get install python-sphinx dia
Gustavo’s ns-3-pyviz的視覺化軟體
18) sudo apt-get install python-pygraphviz python-kiwi python-pygoocanvas libgoocanvas-dev
支援openflow 模組(requires some boost libraries)
19) sudo apt-get install libboost-signals-dev libboost-filesystem-dev
支援基於 MPI的分散式模擬
20) sudo apt-get install openmpi*

21) sudo apt-get install qt4-qmake

22) sudo apt-get install qt4-dev-tools //這個是後邊NetAnim模擬介面需要依賴的軟體包

2 下載NS3.27安裝包

mkdir tarballs

cd tarballs

wget http://www.nsnam.org/release/ns-allinone-3.27.tar.bz2

tar -xjvf ns-allinone-3.27.tar.bz2

 

3 編譯安裝

分兩種情況選擇如何編譯安裝:

首次進行編譯安裝的時候我們把下面的步驟1執行一遍。

不是首次進行配置編譯的時候執行步驟2。

步驟1:

在終端進入解壓縮資料夾ns-allinone-3.27(注意不是ns-3.27)


執行命令 sudo ./build.py

步驟2:配置編譯,這是兩個過程,我們先進行配置ns3過程,再進行編譯ns3過程。

使用waf編譯安裝(waf命令是互動式的,是基於python語言的開源編譯系統。一旦我們用sudo ./build.py命令編譯安裝過ns-3,再想重新配置和編譯就只能用waf命令。需要注意的是waf命令配置時是在目錄ns-3.27下)

cd ns-3.27

sudo ./waf clean //清除先前的配置編譯

sudo ./waf -d debug --enable-example --enable-tests configure //基於waf的配置除錯方式

執行命令 sudo ./waf ,執行後的截圖如下:

4 測試NS3編譯是否正確

利用test.py指令碼進行測試,這是利用python語言編寫的

cd ns-3.27

sudo ./test.py –c core

該指令碼是waf並行執行,可以看到執行過程中出現一堆的PASS…(執行過程很長,幾十分鐘)最後一行顯示測試的結果,總共測試的數量和測試通過的指令碼數量。執行過程截圖如下:


測試 ./waf --run hello-simulator


輸出hello simulator 表示安裝成功!

sudo ./waf --run first –vis

5 參考

https://blog.csdn.net/weixin_44697375/article/details/101285565

https://blog.csdn.net/litongqiang/article/details/92848594

https://blog.csdn.net/rical730/article/details/71504169

相關文章