NS3 | 您所在的位置:网站首页 › ns3安装失败 › NS3 |
NS3从环境搭建到编译运行再到VScode查看ns3源码
1. 开发环境
1.1 添加源
sudo vim /etc/apt/sources.list
#在文件末尾添加
deb http://archive.ubuntu.com/ubuntu/ trusty main universe restricted multiverse
sudo apt-get update
sudo apt-get upgrade
1.2 安装依赖环境
vim pre.sh
#输入一下内容
#!/bin/sh
sudo apt-get install gcc g++ python python3 -y
sudo apt-get install gcc g++ python python3 python3-dev -y
sudo apt-get install python3-setuptools git mercurial -y
sudo apt-get install qt5-default mercurial -y
sudo 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 -y
sudo apt-get install openmpi-bin openmpi-common openmpi-doc libopenmpi-dev -y
sudo apt-get install autoconf cvs bzr unrar -y
sudo apt-get install gdb valgrind -y
sudo apt-get install uncrustify -y
sudo apt-get install doxygen graphviz imagemagick -y
sudo apt-get install texlive texlive-extra-utils texlive-latex-extra texlive-font-utils texlive-lang-portuguese dvipng latexmk -y
sudo apt-get install python3-sphinx dia -y
sudo apt-get install gsl-bin libgsl-dev libgsl23 libgslcblas0 -y
sudo apt-get install tcpdump -y
sudo apt-get install sqlite sqlite3 libsqlite3-dev -y
sudo apt-get install libxml2 libxml2-dev -y
sudo apt-get install cmake libc6-dev libc6-dev-i386 libclang-dev llvm-dev automake -y
sudo apt-get install python3-pip -y
pip install cxxfilt -y
sudo apt-get install libgtk2.0-0 libgtk2.0-dev -y
sudo apt-get install vtun lxc -y
sudo apt-get install libboost-signals-dev libboost-filesystem-dev -y
sudo apt-get install python-dev python-pygraphviz python-kiwi python-pygoocanvas python-gnome2 gir1.2-goocanvas-2.0 python-rsvg -y
保存脚本并运行 su root chmod 755 pre.sh ./pre.sh 2. NS3下载从 ns3官网下载ns-3.32或者wget获取源码 cd mkdir workspace cd workspace wget https://www.nsnam.org/release/ns-allinone-3.32.tar.bz2 tar xjf ns-allinone-3.32.tar.bz2进入下载目录,将看到如下文件 cd ns-allinone-3.32 ls bake constants.py ns-3.32 README build.py netanim-3.108 pybindgen-0.21.0 util.py 3. waf编译NS3 3.1 简单编译 cd ns3.32 ./waf clean #编译之前clean一下是个好习惯 ./waf configure --build-profile=debug --out=build/debug --enable-examples --enable-tests ./waf build 3.2 设置环境变量编译 vim ~/.bashrc #添加如下内容 export NS3CONFIG="--enable-examples --enable-tests" export NS3DEBUG="--build-profile=debug --out=build/debug" export NS3OPT=="--build-profile=optimized --out=build/optimized" source ~/.bashrc cd ns3.32 ./waf clean #编译之前clean一下是个好习惯 ./waf configure $NS3CONFIG $NS3DEBUG ./waf build 4. 测试 ./test.py ./test.py -c core #只测试核心将会看到一份报告,最后显示 667 of 670 tests passed (667 passed, 3 skipped, 0 failed, 0 crashed, 0 valgrind errors)这是需要检查的重要消息;失败、崩溃或valgrind错误表示代码有问题或工具与代码之间不兼容。要注意 末尾的摘要行报告所有测试都通过了;没有失败或崩溃的测试。 5.运行 ./waf --run hello-simulator将会看到输出 Hello Simulator如果您看到Waf消息表明构建已成功完成,但没有看到“Hello Simulator”输出,则很可能您已将构建模式切换到Building with Waf部分中的optimized,但没有返回调试模式的更改。本教程中使用的所有控制台输出都使用一个特殊的ns-3日志记录组件,该组件用于将用户消息打印到控制台。编译优化代码时,此组件的输出将自动禁用–它是“优化输出”。如果看不到“Hello Simulator”输出,请键入以下内容: ./waf clean #编译之前clean一下是个好习惯 ./waf configure $NS3CONFIG $NS3DEBUG ./waf build 6. 使用VScode查看代码 6.1 打开NS3源码文件安装好VScode,并安装C/C++扩展,打开ns3的源码,源码位置如下: ../workspace/ns-allinone-3.32/ns-3.32按F1打开控制台,搜索c/c++ |
CopyRight 2018-2019 实验室设备网 版权所有 |