[ndnSIM] Failed to install OpenFlow module in ndnSIM

Spyridon (Spyros) Mastorakis mastorakis at cs.ucla.edu
Mon Feb 5 20:32:22 PST 2018


Hi,

this is not related to ndnSIM, but NS-3.

I would suggest you send an email to the NS-3 mailing list and ask for help.

Thanks,

Spyridon (Spyros) Mastorakis
Personal Website: http://cs.ucla.edu/~mastorakis/ <http://cs.ucla.edu/~mastorakis/>
Internet Research Laboratory
Computer Science Department
UCLA

> On Feb 5, 2018, at 8:29 PM, Md Monjurul Karim <karim.npu at gmail.com> wrote:
> 
> Greetings everyone,
> 
> I was trying to install OpenFlow module in ndnSIM.
> 
> I was following OpenFlow installation on NS-3 mentioned 
> https://www.nsnam.org/docs/release/3.13/models/html/openflow-switch.html <https://www.nsnam.org/docs/release/3.13/models/html/openflow-switch.html>
> 
> =======================================================================
> 
> Setting top to                           : /home/user/ndnSIM/ns-3 
> Setting out to                           : /home/user/ndnSIM/ns-3/build 
> Checking for 'gcc' (C compiler)          : /usr/bin/gcc 
> Checking for cc version                  : 5.4.0 
> Checking for 'g++' (C++ compiler)        : /usr/bin/g++ 
> Checking supported compiler CXXFLAGS     : -std=c++0x -std=c++11 
> Checking supported optimizations CXXFLAGS : -O0 
> Checking supported debug CXXFLAGS         : -ggdb -g3 
> Checking supported warnings CXXFLAGS      : -Wall -Wno-error=deprecated-declarations -fstrict-aliasing -Wstrict-aliasing 
> Checking for compilation flag -Wl,--soname=foo support : ok 
> Checking for program 'python'                          : /usr/bin/python 
> Checking for python version                            : (2, 7, 12, 'final', 0) 
> python-config                                          : /usr/bin/python-config 
> Asking python-config for pyembed '--cflags --libs --ldflags' flags : yes 
> Testing pyembed configuration                                      : yes 
> Asking python-config for pyext '--cflags --libs --ldflags' flags   : yes 
> Testing pyext configuration                                        : yes 
> Checking for compilation flag -fvisibility=hidden support          : ok 
> Checking for compilation flag -Wno-array-bounds support            : ok 
> Checking for pybindgen location                                    : ../pybindgen (guessed) 
> Checking for python module 'pybindgen'                             : 0.18.0 
> Checking for pybindgen version                                     : 0.18.0 
> Checking for code snippet                                          : yes 
> Checking for types uint64_t and unsigned long equivalence          : no 
> Checking for code snippet                                          : no 
> Checking for types uint64_t and unsigned long long equivalence     : yes 
> Checking for the apidefs that can be used for Python bindings      : gcc-LP64 
> Checking for internal GCC cxxabi                                   : complete 
> Checking for python module 'pygccxml'                              : 1.0.0 
> Checking for pygccxml version                                      : 1.0.0 
> pygccxml (found 1.0.0) is too old (need 1.9.0) => automatic scanning of API definitions will not be possible
> Checking boost includes                                            : 1_58 
> Checking boost libs                                                : ok 
> Checking for boost linkage                                         : ok 
> Checking for click location                                        : not found 
> Checking for program 'pkg-config'                                  : /usr/bin/pkg-config 
> Checking for 'gtk+-2.0' >= 2.12                                    : not found 
> Checking for 'libxml-2.0' >= 2.7                                   : yes 
> Checking for type uint128_t                                        : not found 
> Checking for type __uint128_t                                      : yes 
> Checking high precision implementation                             : 128-bit integer (default) 
> Checking for header stdint.h                                       : yes 
> Checking for header inttypes.h                                     : yes 
> Checking for header sys/inttypes.h                                 : not found 
> Checking for header sys/types.h                                    : yes 
> Checking for header sys/stat.h                                     : yes 
> Checking for header dirent.h                                       : yes 
> Checking for header stdlib.h                                       : yes 
> Checking for header signal.h                                       : yes 
> Checking for header pthread.h                                      : yes 
> Checking for header stdint.h                                       : yes 
> Checking for header inttypes.h                                     : yes 
> Checking for header sys/inttypes.h                                 : not found 
> Checking for library rt                                            : yes 
> Checking for header sys/ioctl.h                                    : yes 
> Checking for header net/if.h                                       : yes 
> Checking for header net/ethernet.h                                 : yes 
> Checking for header linux/if_tun.h                                 : yes 
> Checking for header netpacket/packet.h                             : yes 
> Checking for NSC location                                          : not found 
> Checking for program 'doxygen'                                     : /usr/bin/doxygen 
> Checking for program 'tar'                                         : /bin/tar 
> Checking for program 'sphinx-build'                                : /usr/bin/sphinx-build 
> Checking for std::is_default_constructible                         : yes 
> Checking for std::is_nothrow_move_constructible                    : yes 
> Checking for std::is_nothrow_move_assignable                       : yes 
> Checking for std::to_string                                        : yes 
> Checking for std::vector::insert with const_iterator               : yes 
> Checking for library pthread                                       : yes 
> Checking for 'sqlite3'                                             : yes 
> Checking for OpenSSL lib                                           : "OpenSSL 1.0.2g-fips  1 Mar 2016" 
> Checking if OpenSSL library works                                  : yes 
> Checking for OpenFlow location                                     : /home/user/ndnSIM/openflow/ (given) 
> Checking for library dl                                            : yes 
> Checking for library xml2                                          : yes 
> Checking for library openflow                                      : yes 
> Checking for 'sqlite3'                                             : yes 
> Checking for header linux/if_tun.h                                 : yes 
> Checking for python module 'gtk'                                   : ok 
> Checking for python module 'goocanvas'                             : 0.14.1 
> Checking for python module 'pygraphviz'                            : 1.3.1 
> Checking boost includes                                            : 1_58 
> Checking for program 'sudo'                                        : /usr/bin/sudo 
> Checking for program 'valgrind'                                    : /usr/bin/valgrind 
> Checking for 'gsl'                                                 : yes 
> python-config                                                      : not found 
> Checking for program 'doxygen'                                     : /usr/bin/doxygen 
> ---- Summary of optional NS-3 features:
> Build profile                 : debug
> Build directory               : 
> BRITE Integration             : not enabled (BRITE not enabled (see option --with-brite))
> DES Metrics event collection  : not enabled (defaults to disabled)
> Emulation FdNetDevice         : enabled
> Examples                      : not enabled (defaults to disabled)
> File descriptor NetDevice     : enabled
> GNU Scientific Library (GSL)  : enabled
> Gcrypt library                : not enabled (libgcrypt not found: you can use libgcrypt-config to find its location.)
> GtkConfigStore                : not enabled (library 'gtk+-2.0 >= 2.12' not found)
> MPI Support                   : not enabled (option --enable-mpi not selected)
> NS-3 Click Integration        : not enabled (nsclick not enabled (see option --with-nsclick))
> NS-3 OpenFlow Integration     : enabled
> Network Simulation Cradle     : not enabled (NSC not found (see option --with-nsc))
> PlanetLab FdNetDevice         : not enabled (PlanetLab operating system not detected (see option --force-planetlab))
> PyViz visualizer              : enabled
> Python API Scanning Support   : not enabled (pygccxml Python module too old)
> Python Bindings               : enabled
> Real Time Simulator           : enabled
> SQlite stats data output      : enabled
> Tap Bridge                    : enabled
> Tap FdNetDevice               : enabled
> Tests                         : not enabled (defaults to disabled)
> Threading Primitives          : enabled
> Use sudo to set suid bit      : not enabled (option --enable-sudo not selected)
> XmlIo                         : enabled
> ndnSIM                        : enabled
> 'configure' finished successfully (7.096s)
> 
> ===========================================================
> 
> However, while linking OpenFlow libraries, I have encountered following error:
> 
> [3376/3503] Linking build/src/lte/examples/ns3-dev-lena-deactivate-bearer-debug
> [3377/3503] Linking build/examples/traffic-control/ns3-dev-red-vs-nlred-debug
> [3378/3503] Linking build/examples/wireless/ns3-dev-multirate-debug
> [3379/3503] Linking build/src/openflow/examples/ns3-dev-openflow-switch-debug
> [3380/3503] Linking build/examples/wireless/ns3-dev-power-adaptation-distance-debug
> [3381/3503] Linking build/examples/wireless/ns3-dev-power-adaptation-interference-debug
> [3382/3503] Linking build/src/wave/examples/ns3-dev-vanet-routing-compare-debug
> [3383/3503] Linking build/src/lte/examples/ns3-dev-lena-fading-debug
> [3384/3503] Linking build/src/lte/examples/ns3-dev-lena-frequency-reuse-debug
> 
> ./libns3-dev-openflow-debug.so: undefined reference to `update_checksums'
> collect2: error: ld returned 1 exit status
> 
> Waf: Leaving directory `/home/user/ndnSIM/ns-3/build'
> Build failed
>  -> task in 'openflow-switch' failed (exit status 1): 
> 	{task 139948845677712: cxxprogram openflow-switch.cc.1.o -> ns3-dev-openflow-switch-debug}
> 
> ['/usr/bin/g++', '-pthread', 'src/openflow/examples/openflow-switch.cc.1.o', '-o', '/home/user/ndnSIM/ns-3/build/src/openflow/examples/ns3-dev-openflow-switch-debug', '-Wl,-Bstatic', '-Wl,-Bdynamic', '-Wl,--no-as-needed', '-L.', '-L/home/user/ndnSIM/openflow/build/default', '-L/home/user/ndnSIM/openflow/lib', '-lns3-dev-openflow-debug', '-lns3-dev-applications-debug', '-lns3-dev-internet-debug', '-lns3-dev-bridge-debug', '-lns3-dev-mpi-debug', '-lns3-dev-traffic-control-debug', '-lns3-dev-csma-debug', '-lns3-dev-config-store-debug', '-lns3-dev-network-debug', '-lns3-dev-stats-debug', '-lns3-dev-core-debug', '-lrt', '-lpthread', '-lgsl', '-lgslcblas', '-lm', '-lsqlite3', '-lopenflow', '-ldl', '-ldl', '-lxml2', '-lxml2']
> 
> 
> 
> 
> 
> Am I missing some pre-configuration before running ./waf config....... 
> 
> 
> Sincerely,
> Karim

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.lists.cs.ucla.edu/pipermail/ndnsim/attachments/20180205/d6821619/attachment-0001.html>


More information about the ndnSIM mailing list