nam ubuntu 14.04中的分段错误(核心转储)

当我通过终端使用NS2时,我不断收到段故障(核心转储)消息。

g_0zek@g-0zeK-pc:~$ ns lab1.tcl g_0zek@g-0zeK-pc:~$ nam lab1.nam Segmentation fault (core dumped) 

尽管xgraph工作正常

tcl的代码似乎没问题,因为它来自大学,我的一个朋友运行得很好。 有任何想法吗?

不要通过终端安装。

从https://sourceforge.net/projects/nsnam/下载ns-allinone-2.35.tar.gz文件

安装以下依赖项

 sudo apt-get install tcl8.5-dev tk8.5-dev gcc-4.4 g++-4.4 build-essential autoconf automake perl xgraph libxt-dev libx11-dev libxmu-dev. 

提取ns-allinone-2.35.tar.gz

打开ns-allinone-2.35/ns-2.35/linkstate/ls.h文件。

转到第137行。

更改

 "void eraseAll() {erase(baseMap::begin(), baseMap::end());}" 

 "void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }" 

然后转到ns-allinone-2.35目录

 cd home/isysway/ns-allinone-2.35/ ./install 

这需要一些时间

来到主页目录

 isysway@isysway:~$ sudo gedit .bashrc 

将打开一个文本文件

转到文件的末尾

添加以下行

 PATH=$PATH:/home/isysway/ns-allinone-2.35/bin:/home/isysway/ns-allinone-2.35/tcl8.5.10/unix:/home/isysway/ns-allinone-2.35/tk8.5.10/unix LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/isysway/ns-allinone-2.35/otcl-1.14/lib:/home/isysway/ns-allinone-2.35/lib TCL_LIBRARY=$TCL_LIBRARY:/home/isysway/ns-allinone-2.35/tcl8.5.10/library export PATH export LD_LIBRARY_PATH export TCL_LIBRARY 

注意:我的用户名是“isysway”,你用你的用户名替换它

 isysway@isysway:~$source .bashrc 

然后

 isysway@isysway:~$ns % 

如果模数符号来了你就做了。

确保正确安装NS。 怎么样 ? 东下载一个没有运行nam的TCl文件。 如果你不知道nam只是用于以图形方式描述算法。 下载并运行TCL文件后(正如我所说的那样免费下载nam或至少你自己禁用该行或将它们作为对你的TCL文件的评论。

在14.04上运行nam时存在一些问题。 您应该从此处下载nam并将解压缩的文件复制到/ usr / local / bin。 但我只测试了ubuntu 32 bit 14.04。

顺便说一句,如果你是NS2的新手。 我应该告诉你没有必要遵循erlang NS2方法。 如果你不够恐惧,我建议你在这里看看: http : //www.linuxquestions.org/questions/linux-newbie-8/ns2-version-2-34-is-too-old-wpan-802 -15-4-A-4175499373 /

我认为Ubuntu 14.04包中肯定存在一个错误。 可能最好的办法是从源代码安装,直到软件包维护者修复问题为止。 我已经告知了这个bug 。

Interesting Posts