Ns-3.28-errata

From Nsnam
Revision as of 21:21, 23 June 2018 by Tomh (Talk | contribs) (update ns-3.28 errata)

Jump to: navigation, search

Main Page - Current Development - Developer FAQ - Tools - Related Projects - Project Ideas - Summer Projects

Installation - Troubleshooting - User FAQ - HOWTOs - Samples - Models - Education - Contributed Code - Papers

Errata against ns-3.28 release

g++-8 compilation problem (mesh module): Shortly after the ns-3.28 release, Fedora 28 was released, featuring gcc-8 as the default compiler. The following patch is needed to successfully compile ns-3 with g++-8 compiler:

g++-8 machines and GTK+: Shortly after the ns-3.28 release, Fedora 28 was released, featuring gcc-8 as the default compiler. This compiler, when used with the default configuration of ns-3's build scripts, will fail to compile ns-3 when the system discovers and tries to use GTK+ libraries.

An example error output is:

   /usr/include/gtk-2.0/gtk/gtkfilechooserbutton.h:59:8: error: unnecessary parentheses in declaration of ‘__gtk_reserved1’ [-Werror=parentheses]
  void (*__gtk_reserved1);

One workaround is to disable the use of GTK using the configure option '--disable-gtk'

 ./waf configure --enable-examples --enable-tests --disable-gtk

Another workaround is to pass modified CXXFLAGS to the waf configure step; i.e. instead of configuring as:

 ./waf configure --enable-examples --enable-tests

instead type (all in one line):

 CXXFLAGS="-Wall -Werror -Wno-parentheses" ./waf configure --enable-examples --enable-tests

A modification to ns-3 build scripts is in progress and may be posted as a future incremental release (and will be included in ns-3.29 and later releases).

Ubuntu 18.04 pygoocanvas and pyviz: Ubuntu has stopped distributing pygoocanvas (Python bindings for goocanvas) as of release 18.04, and the existing version of Pyviz visualizer depends on this. There is no posted workaround for this problem on Ubuntu 18.04, although users may be able to build and install pygoocanvas from source. A fix for Pyviz (port to newer packages) is in work.