0. 写在前面
对于初次接触Linux系统的人来说,ns-3 的安装似乎并不友好。但事实上只要按部就班地来做,其安装过程也没有看上去的那么复杂。本文将官方 Wiki 中的安装过程稍作梳理,希望能为初学者带来一些方便。同时由于官方 Wiki 中的描述已经足够详细,因此本文中将会出现大段引用并且不打算进行翻译,望请见谅。
1. 安装 ns-3
1.1 环境配置
本节参考官方 Wiki 中 Installation 页面的 Prerequisites - Ubuntu/Debian 小节,详细说明请跳转至 Wiki 页面进行查询。
执行以下指令,安装正确编译和使用 ns-3 所必须的工具:
minimal requirements for C++ (release): This is the minimal set of packages needed to run ns-3 from a released tarball.
apt-get install gcc g++ python
minimal requirements for Python (release): This is the minimal set of packages needed to work with Python bindings from a released tarball.
apt-get install gcc g++ python python-dev
qt4 development tools (Note: qt4, not qt5) needed for NetAnim animator
apt-get install qt4-dev-tools libqt4-dev
以上是安装 ns-3 所必须安装的工具(实际上第三个qt开发包对 ns-3 本身来说并不是必须的,但是它是动画演示工具 NetAnim 所必须的,而该工具是 ns-3 非常常用的工具,所以我认为属于必装工具)。在官方 Wiki 中 Installation 页面的 Prerequisites - Ubuntu/Debian 小节中还有很多其他的可选工具,可以在以后的实际使用中选择自己所需要的进行安装。
因为作者对于 Linux 下的编程也是新手,因此一个优秀的 IDE 对我来说显得必不可少,我选择了Eclipse这款工具作为我调试 ns-3 的工具,因为它是一个功能强大且稳定的 IDE 工具,并且 ns-3 的官方 Wiki 中有关于如何利用 Eclipse 进行调试的说明(相关说明本文后半部分将会详细讲解),所以我选择它来进行调试。同样拥有官方说明的 IDE 工具还有 NetBeans 和 QtCreator。
如果打算使用 Eclipse 进行 ns-3 的开发工作,此时可以先安装 Eclipse 以及 cdt 插件(使 Eclipse 支持 C++ 开发),并且打开 Eclipse 并新建一个工作空间(workspace)。之后下载的 ns-3 工程应当直接放到该工作空间目录中以便 Eclipse 识别。
1.2 安装
1.2.1 使用 Bake 工具进行安装
该工具是 ns-3 新版本中提供的一个集安装、编译与查询缺少工具于一身的工具,但我所使用的一直是手动安装方式(将在下一小节中介绍),从来没有尝试过这种安装方式。所以,在此直接照搬官方 Wiki 中的相关介绍,详情请参考官方 Wiki 中 Installation 页面的 Installation - Installation with Bake 小节。
Bake is a new tool for installing, building and finding out the missing requirements for ns-3 in your own environment.
To use Bake you need to have at least Python (preferably 2.6 and above) and mercurial in your machine (see the section Prerequisites above to see how to install these).
First you need to download Bake using Mercurial, go to where you want Bake to be installed and call
hg clone http://code.nsnam.org/bake
It is