Skip to content
forked from bisdn/rofl-core

OpenFlow library set - Collection of libraries to build OpenFlow controllers and switches

Notifications You must be signed in to change notification settings

msune/rofl-core

 
 

Repository files navigation

What it is

The Revised OpenFlow Library (ROFL) helps you adding OpenFlow support to your software to build control applications, controller frameworks and/or datapath elements.

Requirements

  • A modern GNU build-system (autoconf, automake, libtool, ...)
  • pkg-config
  • GNU/Linux and libc development headers (linux-libc-dev and libc6-dev package in Debian/Ubuntu systems)
  • [optional] if you want to run automatic tests (make check), libcunit and libcppunit are required (in libcunit1-dev and libcppunit-dev packages in Debian-like systems).
  • [optional] Doxygen to generate the documentation.

How to build

Install the dependencies and run:

sh# ./autogen.sh
sh# cd build
sh# ../configure
sh# make
sh# make install

Optionally you can 'make check' for consistency checks.

Optional ../configure parameters

--enable-debug: Compile with debug symbols (-g) and debug output (warning, it may affect performance)
--enable-verbose: Increase the level of debug (useless without --enable-debug)
--disable-silent-rules: Enable verbose compilation mode (AM_SILENT_RULES disabled)

Known issues with Automake 1.4

ROFL package uses 'subdir-objects'. From 1.4 on, the support of 'subdir-objects' must be explicitly added in AM_INIT_AUTOMAKE() in order to prevent warnings that will abort compilation. However, due to the following bug:

http://debbugs.gnu.org/cgi/bugreport.cgi?bug=13928

The build system won't work if 'subdir-objects' is added in AM_INIT_AUTOMAKE() for both Automake 1.4 and 1.3.

Currently, in order to compile the package, the suggested strategy is to remove -Werror from AM_INIT_AUTOMAKE() in the configure.ac:

diff --git a/configure.ac b/configure.ac
index 0864619..e10a114 100644
--- a/configure.ac
+++ b/configure.ac
@@ -3,7 +3,7 @@ AC_INIT(ROFL, 0.4.0, rofl@bisdn.de, rofl, https://www.codebasin.net/redmine/proj
 AC_CONFIG_AUX_DIR([build-aux])
 AC_CONFIG_MACRO_DIR([m4])
 
-AM_INIT_AUTOMAKE([-Wall -Werror foreign])
+AM_INIT_AUTOMAKE([-Wall foreign])

Note there will be a considerably number of warnings shown. Once bug 13928, 'subdir-objects' will be added as it should be.

Doxygen documentation

Documentation can be compiled via 'make doc'. Documentation is generated in build/doc/ folder

FAQ

Some distributions, in particular Red Hat based, do not include by default /usr/local/lib on the search path of ldconfig, not allowing to link against -lrofl and -lrofl_pipeline. In this case, you might have to add /usr/local/lib/ into /etc/ld.so.conf and re-run ldconfig.

More information, documentation and support

You can have a look on:

http://www.roflibs.org/ http://www.roflibs.org/doc/

Documentation can be compiled via 'make doc'. Documentation is generated in build/doc/ folder

Authorship

(c) Copyright BISDN GmbH 2013

Andreas Koepsel<andreas.koepsel (at) bisdn.de>
Marc Sune<marc.sune (at) bisdn.de>
Victor Alvarez<victor.alvarez (at) bisdn.de>
Tobias Jungel<tobias.jungel (at) bisdn.de>

And others.

About

OpenFlow library set - Collection of libraries to build OpenFlow controllers and switches

Resources

Stars

Watchers

Forks

Packages

No packages published