一、PyViz安装
1.安装依赖包
sudo apt-get install python-dev python-pygraphviz python-kiwi python-pygoocanvas python-gnome2 python-gnomedesktop python-rsvg
注意: ‘python-gnomedesktop’安装包问题 将命令python-gnomedesktop换为 python-gnome2-desktop-dev
2.安装交互python使得GUI上有控制台按钮
sudo apt-get install ipython
3.PyViz测试
1) python脚本
./waf --pyrun src/flow-monitor/examples/wifi-olsr-flowmon.py --visualize
2) C++脚本
对于src/olsr/examples/simple-point-to-point-olsr.cc脚本,要出现GUI界面,使用下面的命名是无法成功的
./waf --run src/olsr/examples/simple-point-to-point-olsr --vis
需要修改wscript文件(都可~)
obj=bld.create_ns3_program('simple-point-to-point-olsr', ['point-to-point', 'internet', 'olsr', 'applications', 'wifi'])
修改成
obj=bld.create_ns3_program('simple-point-to-point-olsr', ['point-to-point', 'internet', 'olsr', 'applications', 'wifi', 'visualizer'])
4.使用方法
以命令行参数的形式调用,只要编写的脚本(形如xxx.cc文件)中加入下面的语句(需加在创建节点之前):
1)CommandLine cmd;
2)cmd.Parse (argc, argv);
运行程序时加入参数 --vis
比如:sudo ./waf --run examples/tutorial/third --vis
5.使用实例
sudo ./waf --run scratch/first --vis
注意:--vis 选项无效
visualizer模块依赖PythonBinding,NS3中的PythonBinding由pybindgen完成,但是pybindgen工具在ns-allinone-3.xx目录下,而不是在ns-3.xx目录下,如果移动了ns-3.xx的目录,就无法定位pybindgen进而完成PythonBinding
解决方法:
重新配置和编译NS-3,配置行用 --with-pybindgen加上pybindgen所在目录:
sudo ./waf -d debug --enable-examples --enable-tests configure --with-pybindgen=~/NS3/ns-allinone-3.25/pybindgen-0.17.0.post49+ng0e4e3bc/
sudo ./waf
注意事项:
1)LTE devices do not support visualizer yet.也就是PyViz不适用于LTE网络设备
2)You cannot use visualizer with simulations that require emulation (EmuNetDevice, TapNetDevice) or real-time scheduler (RealTimeSimulator).
二、安装NetAnim
1.安装依赖包并下载
sudo apt-get install mercurial
sudo apt-get install qt4-dev-tools
这里可以下载关于NS3的很多软件包 http://code.nsnam.org/
2.安装NetAnim
进入Netanim文件夹
cd netanim-3.107
sudo make clean
sudo qmake NetAnim.pro (For MAC Users: qmake -spec macx-g++ NetAnim.pro)
sudo make
参考:
1. https://blog.csdn.net/mars_nudt/article/details/7464088
2. https://blog.csdn.net/tttabcgy/article/details/77675853
3. https://blog.csdn.net/wuzhiwuweisun/article/details/79493986
4. https://blog.csdn.net/qq_22634949/article/details/83543311
5. https://blog.csdn.net/wuzhiwuweisun/article/details/79790041