NS3 安裝 (ubuntu 20.04)

一、安裝依賴庫(kù)

  1. 安裝C++和python3(其實(shí)ubuntu 20.04已經(jīng)內(nèi)置了)
 apt-get install g++ python3
  1. 如果你要安裝的版本是3.30或3.31或ns-3-dev,你還需要安裝(推薦安裝)
 apt-get install python3-dev pkg-config sqlite3
  1. 對(duì)Python(開(kāi)發(fā))的最低要求:為了使用ns-3-allinone存儲(chǔ)庫(kù)(從Git克?。?,需要其他軟件包才能獲取并成功安裝pybindgen和netanim。
 apt-get install python3-setuptools git
  1. qt5
 apt-get install qt5-default mercurial
  1. ns-3-pyviz可視化工具的依賴(安裝失敗也沒(méi)事兒,這個(gè)以后再說(shuō))
  • 對(duì)于ns-3.28和更早的版本,PyViz基于GTK + 2,GooCanvas和GraphViz:
apt-get install python-pygraphviz python-kiwi python-pygoocanvas libgoocanvas-dev ipython
  • 對(duì)于Ubuntu 18.04,不再提供python-pygoocanvas。 ns-3.29和更高版本將支持升級(jí)到GTK +版本3,并且需要以下軟件包:
apt-get install gir1.2-goocanvas-2.0 python-gi python-gi-cairo python-pygraphviz python3-gi python3-gi-cairo python3-pygraphviz gir1.2-gtk-3.0 ipython ipython3
  1. 基于MPI的分布式仿真的依賴
apt-get install openmpi-bin openmpi-common openmpi-doc libopenmpi-dev
  1. bake構(gòu)建工具的依賴:
apt-get install autoconf cvs bzr unrar
  1. 調(diào)試
apt-get install gdb valgrind 
  1. utils / check-style.py代碼樣式檢查程序的依賴
apt-get install uncrustify
  1. Doxygen和相關(guān)的在線文檔:
apt-get install doxygen graphviz imagemagick
apt-get install texlive texlive-extra-utils texlive-latex-extra texlive-font-utils dvipng latexmk
  1. ns-3手冊(cè)和教程使用Sphinx的reStructuredText(doc / tutorial,doc / manual,doc / models)編寫,并且圖形通常以dia(還需要上面的texlive軟件包)編寫:
apt-get install python3-sphinx dia 
  1. GNU科學(xué)庫(kù)(GSL)支持更精確的802.11b WiFi錯(cuò)誤模型(OFDM不需要):
apt-get install gsl-bin libgsl-dev libgsl23 libgslcblas0
  1. 讀取pcap數(shù)據(jù)包跟蹤
apt-get install tcpdump
  1. 數(shù)據(jù)庫(kù)對(duì)統(tǒng)計(jì)框架的支持
apt-get install sqlite sqlite3 libsqlite3-dev
  1. 配置存儲(chǔ)的基于Xml的版本(需要libxml2> =版本2.7)
apt-get install libxml2 libxml2-dev
  1. 支持生成修改后的python綁定(這步官網(wǎng)是安裝的pip,但是現(xiàn)在一般都是python3,ubuntu20.04已經(jīng)不支持pip,所以這里我換成了python3的pip)
apt-get install cmake libc6-dev libc6-dev-i386 libclang-6.0-dev llvm-6.0-dev automake python3-pip
python3 -m pip install --user cxxfilt
  1. 基于GTK的配置系統(tǒng)
apt-get install libgtk-3-dev
  1. 實(shí)驗(yàn)虛擬機(jī)和ns-3
apt-get install vtun lxc uml-utilities
  1. 支持openflow模塊(需要一些boost庫(kù))官網(wǎng)還要安裝libboost-signals-dev,但是無(wú)論是ubuntu官網(wǎng)還是網(wǎng)上,都沒(méi)有有關(guān)這個(gè)的信息,然后網(wǎng)上說(shuō)openflow這個(gè)可以不安,所以對(duì)于libboost-signals-dev,有需要的自行解決
apt-get install libboost-filesystem-dev

二、安裝 NS3

  1. 創(chuàng)建Tarballs目錄
mkdir tarballs
  1. 進(jìn)入目錄
cd tarballs
  1. 下載壓縮包
wget http://www.nsnam.org/release/ns-allinone-3.31.tar.bz2
  1. 解壓
tar xjf ns-allinone-3.31.tar.bz2

三、編譯 NS3

  1. 編譯文件(設(shè)置允許測(cè)試)
sudo ./build.py --enable-examples --enable-tests

四、測(cè)試

1. 清除 build 目錄
cd ns-3.31
./waf distclean
2. 打開(kāi) debug 并開(kāi)啟例子及幫助
./waf configure --build-profile=debug --enable-examples --enable-tests
./waf build 
3. 可通過(guò)運(yùn)行./test.py -c core來(lái)進(jìn)行測(cè)試
./test.py -c core
4. 運(yùn)行一個(gè)經(jīng)典的腳本
./waf --run hello-simulator

六、ERROR

1. 若看不到輸出,則按照如下配置
./waf configure --build-profile=debug --enable-examples --enable-tests
2. 如果出現(xiàn)錯(cuò)誤
Build failed
-> task failed (exit status 1):

解決辦法:將虛擬機(jī)內(nèi)存調(diào)大,即可;

參考:https://youwolf.cn/?p=514

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容