我正在尝试NS-allinone 2.34
在 Fedora 23 上构建和安装。在构建过程中,我收到以下错误:
tools/ranvar.cc:在成员函数“virtual double GammaRandomVariable::value()”中:
tools/ranvar.cc:219:70:错误:无法直接调用构造函数“GammaRandomVariable::GammaRandomVariable”
tools/ranvar.cc:219: 70: 错误:对于函数式转换,删除多余的 '::GammaRandomVariable'
make: *** [tools/ranvar.o] 错误 1
Ns make 失败!
我需要做什么来解决这个问题?
答案1
简单:您的编译器 g++-5.* 太新,无法编译旧的 ns-2.34 代码。
# dnf install compat-gcc-34-c++
解决方案1)$ cd ns-allinone-2.34/ && export CC=gcc34 CXX=g++34 && ./install
解决方案2)$ cd ns-allinone-2.34/ && patch -p0 < ns234_gcc49.patch && ./install
链接,补丁:https://drive.google.com/file/d/0B7S255p3kFXNZDNyV1BPZHhEY0U/view?usp=sharing
(不确定这个 (2) 是否已使用 Fedora 23 进行测试。)