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: エラー: 関数変換
make の重複 '::GammaRandomVariable' 削除: *** [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でテストされているかどうかはわかりません。)