系统:ubuntu18.04 (+win10双系统)
OMNet++版本:5.6.2
最近要做网络仿真,老师推荐的软件是OMNet。嘶~没学过,还没学过C++,慢慢啃吧。每次安装软件都会出现各种问题,昨天花了大半天时间才把OMNet装好,无他,主要是我不会,但装好了就总结一下吧。
一、安装环境
首先[Ctrl + Alt + T],或直接打开终端,安装必要的软件包,先更新可用包的数据库:
sudo apt-get update
然后安装需要的软件包:
sudo apt-get install build-essential gcc g++ bison flex perl \
python python3 qt5-default libqt5opengl5-dev tcl-dev tk-dev \
libxml2-dev zlib1g-dev default-jre doxygen graphviz libwebkitgtk-3.0-0
安装支持3D可视化的Qtenv,添加ubuntugis/ppa库
# for Ubuntu 16.04 add extra GIS repo
$ sudo add-apt-repository ppa:ubuntugis/ppa
$ sudo apt-get update
# install osgearth development package (and OpenSceneGraph, too)
$ sudo apt-get install openscenegraph-plugin-osgearth libosgearth-dev
遇到(Do you want to continue? [Y/N]), 回答Y.
但是这个时候可能会出现问题,因为添加ppa库时,需要上一步安装的环境支持,如果是步骤直接下来的话,可能会报错:Error: retrieving gpg key time out,这是因为刚才刚下的环境,系统没有更新。emmm,重启一下就好了,sudo reboot
安装PCAP库,允许仿真模型绕过操作系统的协议栈捕获和传输网络数据包。
sudo apt-get install libpcap-dev
然后再官网上下载软件包进行安装就行了。
软件包下载
二、安装OMNet++
把软件包下好之后,在安装之前,应该先设置一下环境变量,详见第三步。但是有一点特别要注意,一定要确保把omnet的安装路径添加到环境变量。选择好合适的路径后,解压:
#具体的文件名记不得了,按tab键可自动弹出
tar xzvf omnet*.tgz
解压之后,打开文件夹
$ ./configure
.......
$ make
三、设置环境变量
这一步可以省略,但是省略的话,要打开omnet的话就只能到下载的路径下,执行
omnetpp
才能打开可视化终端。太麻烦了。所以建议设置一下环境变量
vim ~/.bashrc
在最后一行添加:
$ export PATH=$PATH:/xxx/bin ///xxx/xxx为需要加入的bin地址 等号两边没空格
#不知道当前路径的话
$ pwd
#我的是:
$ export PATH=$PATH:/home/yang/Downloads/omnetpp-5.6.2/bin
然后你就可以快乐的在终端直接打开omnet了:
四、设置桌面图标
最后安装菜单启动栏和快捷方式(可以跳过,看个人喜好)
打开安装OMNet的安装目录执行:
make install-menu-item
make install-desktop-icon
然后在你的所有软件图标中就多了omnet,添加到收藏夹就好。
五、出现的问题
主要出现了两个问题,一个就是刚才提到的Error: retrieving gpg key time out,我是安装了环境重启之后解决的,如果解决不了,
Error: retrieving gpg key timed out
第二个问题是:makefile:23:the recipe for the target “allmodes” failed
是在执行最后一步make的时候出错的。连configure步骤它都说我“good!",但还是在make这个步骤出错了,good个锤子…
后来发现,是因为环境变量的原因,我实在一个叫/media/yang的机械硬盘下安装的,但是咱们在第三部设置环境变量,比如我的是:
export PATH=$PATH:/home/yang/Downloads/omnetpp-5.6.2/bin
我的环境变量添加的是/home/yang/Downloads/omnetpp-5.6.2/bin,所以如果你把软件装载了其他文件夹下,就会报错,所以一定要保证你的omnet当前安装目录路径已经添加到了环境变量中。如果报错的话,按照第三步,修改一下添加当前路径下的bin到环境变量中。
另外,当你修改外之后再执行make或者./configure时,还是会出错,因为你只是添加了环境变量到./bashrc文件中,但是没有生效,系统没有读取新的./bashrc。把当前终端关掉,重新打开一个终端,再进入该路径下执行命令就好了。
如果还报错的话,就吃顿好的吧,生活挺难的就。