ns-3 安装和使用记录

ns-3 是一个比较常用的网络环境模拟器,最近需要用到,使用时出现一些问题记录一下

安装

安装过程基本没什么问题,按照官方WIKI 来就可以,我用的是它提供的第一种方法,用它提供的 bake.py 脚本来装,依赖上基本我这里之前都有了,就直接看它下载编译啥也没做。

结束后会生成一个 bakeSetEnv.sh, 用来配置一些环境变量, 可以 source.zshrc 之类的地方。

IDE 的集成

第一个问题出现在这里,它的WIKI里关于 QtCreator 的部分 太久没有更新了,懒得再去学什么 waf, 如果用 qmake 编译按照它的来做会有链接错误,根本没找到动态库。

附上一个正确能用的 .pro 文件:

TEMPLATE = app
CONFIG += console c++11
CONFIG -= app_bundle
CONFIG -= qt


NS_BUILD_DIR = /home/wlh/Programs/ns3/source/ns-3.30/build
INCLUDEPATH += $$NS_BUILD_DIR

LIBS += -L$$NS_BUILD_DIR/lib
SHARED_LIB_FILES = $$files($$NS_BUILD_DIR/lib/*.so)
for(FILE, SHARED_LIB_FILES) {
    BASENAME = $$basename(FILE)
    CLEARNAME = $$replace(BASENAME,libns,ns)
    CLEARNAME = $$replace(CLEARNAME,.so,)
    LIBS += -l$$CLEARNAME
}

SOURCES += \
        main.cpp

直接简单粗暴地把它的所有 *.so 全都加到编译命令里了

待续

目前刚跑了一个最简单的例子,还没有接着往下学,最近一段时间会比较频繁使用,如果出其他问题以及使用的心得会在这里补充。