= Installation = == Quick Install == Ariba currently build on Linux systems. Our reference platform is Ubuntu 8.04 with the gcc compiler version 4.2.4. Download the latest Ariba package from the the [https://projekte.tm.uka.de/trac/spovnet-base/downloads download site]: Extract the archive and change into the project directory: {{{ > tar xfz ./ariba-x.x.x.tar.gz > cd ariba-x.x.x.tar.gz }}} Now, configure, compile, and install Ariba (if not all libraries needed by Ariba are available on your system, read the section 'Prequisites'): {{{ > ./configure > make > make install }}} In case you don't want to install Ariba into your system but to a local place, do: {{{ > mkdir build > ./configure --prefix=$PWD/build > make > make install }}} == Running the PingPong Sample == -configs anpassen etc == Prequisites == Ariba depends on libraries that may not be installed on your system: * [http://www.boost.org Boost] * [http://logging.apache.org/log4cxx Log4cxx] * [http://gmplib.org GMP] Furthermore, you need default development tools - that are most likely already installed on your system - such as gcc, autoconf, automake, aclocal, libtool, ... If you installed some of the libraries locally and not system wide (e.g. using {{{./configure --prefix=MYPATH}}}, you have to tell Ariba where the libraries are installed. In this example we assume that (1) all libraries are installed locally, and not system wide, and (2) that you want to install Ariba locally. The installation process would then look as follow: {{{ > mkdir build > ./configure --prefix=$PWD/build --with-boost=/home/user/libraries/boost_1_35_0/build CPPFLAGS='-I/home/user/libraries/gmp_4_2_2/build/include -I/home/user/libraries/log4cxx_0_10_0/build/include' LDFLAGS='-L/home/user/libraries/gmp_4_2_2/build/lib -L/home/user/libraries/log4cxx_0_10_0/build/lib -L/home/user/libraries/boost_1_35_0/build/lib' > make > make install }}} This will build and install Ariba into the created {build} folder. == Building for Simulations == Ariba support transparent simulation integration for [http://www.omnetpp.org OMNeT++] and the INET framework. Currently v3 of OMNeT++ is supported. Porting to OMNeT++ 4 will be finished soon. Furthermore, interation with [http://www.oversim.org OverSim] is in the queue. To build Ariba for simulated environment, use the {{{--enable-simulation=yes}}} option to {{{configure}}}. Furthermore, you have to tell Ariba where OMNeT++ and INET include files reside. This time we assume that you have installed the required libraries (like Boost) system wide. If this is not the case, you would have include the paths as shown above {{{ > ./configure --prefix=$PWD/build CPPFLAGS='-I/home/user/omnet/include -I/home/user/inet/Network/IPv4 -I/home/user/inet/Base -I/home/user/inet/Network/Contract -I/home/user/inet/NetworkInterfaces/Contract -I/home/user/inet/Transport/TCP -I/home/user/inet/Transport/UDP -I/home/user/inet/Transport/Contract' --enable-simulation=yes > make > make install }}} This will compile the Ariba library with simulation support and the PingPong sample with simulation support. Note, that the PingPong example will now be compiled as a shared library and reside in {{{build/lib}}}. Details on how to run the simulated PingPong sample are detailed in the next section. == Running the Simulated PingPong Sample == == Overview of special {{{configure}}} options == There are several options to {{{configure}}} that are specific to Ariba: * {{{--enable-debug=yes}}} - for building a debug build * {{{--enable-simulation=yes}}} - for building for simulation integration * {{{--enable-profiling=yes}}} - for profiling with gprof