我正在尝试使用ns-allinone-2.35.tar.gz包在我的ubuntu13.10中安装ns2。
一开始我得到的是x11/*目录没有找到错误。在学习了一些教程并安装了以下工具后,帮助我克服了这些问题。
sudo apt-fast install tcl8.5-dev tk8.5-dev
sudo apt-fast install build-essential autoconf automake
sudo apt-fast install perl xgraph libxt-dev libx11-dev libxmu-dev
sudo apt-fast install xorg-dev g++ xgraph但是,现在我得到了以下错误:
linkstate/ls.h:137:58: error: ‘erase’ was not declared in this scope, and no declarations were found by argument-dependent lookup at the point of instantiation [-fpermissive]
void eraseAll() { erase(baseMap::begin(), baseMap::end()); }
^
linkstate/ls.h:137:58: note: declarations in dependent base ‘std::map<int, LsIdSeq, std::less<int>, std::allocator<std::pair<const int, LsIdSeq> > >’ are not found by unqualified lookup
linkstate/ls.h:137:58: note: use ‘this->erase’ instead
make: *** [linkstate/ls.o] Error 1
Ns make failed!这是我尝试安装的第五天,但失败了。在使用Cygwin在windows7中安装时,由于太多的依赖项而感到恼火,现在我尝试在ubuntu中安装,但得到了这样的错误。
如何解决这个问题?
发布于 2014-01-13 03:06:51
我必须编辑ns-2.35/linkstate/ls.h的第137行
void eraseAll() { erase(baseMap::begin(), baseMap::end()); }至
void eraseAll() { this->erase(baseMap::begin(), baseMap::end()); }我的ns2安装成功了。然而,在kali-linux内部。在ubuntu中,尽管我正确地设置了路径,并且显示了有关nam已成功安装的消息,但nam无法工作,并显示未安装的错误。
如果你想验证,它会显示一些失败。您可以通过使用以下命令安装libperl4-corelibs-perl来更正它们
sudo apt-get install libperl4-corelibs-perl或者如果您已经安装了apt-fast,那么
sudo apt-fast install libperl4-corelibs-perl如果有人能帮我解决ubuntu中的nam安装问题。会很有用的。
发布于 2014-02-20 12:44:28
不需要编辑任何源代码。只需使用旧版本的“gcc”,一切都会正常工作。
在安装之前,请执行以下操作
export CC=gcc-4.4 CXX=g++-4.4如果您没有这些旧版本,请使用
sudo apt-get install gcc-4.4 g++-4.4发布于 2015-04-11 04:20:29
我在安装ns2时遇到了与您相同的错误。更改源代码很有帮助!
首先通过以下步骤进行验证: 1)打开终端,进入'/home/user_name/Documents/ns-allinone-2.35/ns-2.35/‘目录,运行(用您的用户名替换user_name ):
./validate2)如果问题仍然存在,则将'/home/[username]/ns-allinone-2.35/nam-1.15‘文件夹中的'nam’文件复制并粘贴到'/usr/local/bin‘文件夹中。
参考:How to install NS2
有人在评论中提到了关于NAM文件的问题。尝试此处给出的步骤:)如果需要,也可以尝试交叉检查其他步骤。
https://stackoverflow.com/questions/20924638
复制相似问题