Skip to content

airsim/sevmgr

Folders and files

NameName
Last commit message
Last commit date
May 31, 2020
Jan 15, 2012
Jan 15, 2012
Nov 4, 2019
Nov 4, 2019
Jul 24, 2011
Jan 15, 2012
May 31, 2020
Apr 26, 2011
May 31, 2020
May 31, 2020
May 31, 2020
May 31, 2020
Jul 24, 2011
Jan 15, 2012
Jan 15, 2012
Jun 30, 2011
Apr 26, 2011

Repository files navigation

C++ Simulation-Oriented Discrete Event Management Library

Summary

SEvMgr is a C++ library of discrete event queue management classes and functions, exclusively targeting simulation purposes.

SEvMgr makes an extensive use of existing open-source libraries for increased functionality, speed and accuracy. In particular the Boost (C++ Standard Extensions: https://www.boost.org) library is used.

SEvMgr is the one of the components of the Travel Market Simulator (https://travel-sim.org). However, it may be used in a stand-alone mode.

Installation

On Fedora/CentOS/RedHat distribution:

Just use DNF (or Yum on older distributions):

$ dnf -y install sevmgr-devel sevmgr-doc

You can also get the RPM packages (which may work on Linux distributions like Novel Suse and Mandriva) from the Fedora repository (e.g., for Fedora 32, https://fr2.rpmfind.net/linux/RPM/fedora/32/x86_64/)

Building the library and test binary from Git repository

The Git repository may be cloned as following:

$ git clone [email protected]:airsim/sevmgr.git sevmgrgit # through SSH
$ git clone https://github.com/airsim/sevmgr.git # if the firewall filters SSH
$ cd sevmgrgit

Then, you need the following packages (Fedora/RedHat/CentOS names here, but names may vary according to distributions):

  • cmake
  • gcc-c++
  • boost-devel / libboost-dev
  • python-devel / python-dev
  • gettext-devel / gettext-dev
  • sqlite3-devel / libsqlite3-dev
  • readline-devel / readline-dev
  • ncurses-devel
  • soci-mysql-devel, soci-sqlite3-devel
  • stdair-devel / libstdair-dev
  • doxygen, ghostscript, graphviz
  • tetex-latex (optional)
  • rpm-build (optional)

Building the library and test binary from the tarball

The latest stable source tarball (sevmgr*.tar.gz or .bz2) can be found on GitHub: http://github.com/airsim/sevmgr/releases, e.g., https://github.com/airsim/stdair/archive/sevmgr-1.00.5.tar.gz

To customise the following to your environment, you can alter the path to the installation directory:

export INSTALL_BASEDIR="${HOME}/dev/deliveries"
export SEVMGR_VER="1.00.5"
if [ -d /usr/lib64 ]; then LIBSUFFIX="64"; fi
export LIBSUFFIX_4_CMAKE="-DLIB_SUFFIX=$LIBSUFFIX"

Then, as usual:

  • To configure the project, type something like:
  mkdir build && cd build
  cmake -DCMAKE_INSTALL_PREFIX=${INSTALL_BASEDIR}/sevmgr-${SEVMGR_VER} \
   -DWITH_STDAIR_PREFIX=${INSTALL_BASEDIR}/stdair-stable \
   -DCMAKE_BUILD_TYPE:STRING=Debug -DENABLE_TEST:BOOL=ON -DINSTALL_DOC:BOOL=ON \
   -DRUN_GCOV:BOOL=OFF ${LIBSUFFIX_4_CMAKE} ..
  • To build the project, type:
  make
  • To test the project, type:
  make check
  • To install the library (libsevmgr*.so*) and the binary (sevmgr), just type:
  make install
  cd ${INSTALL_BASEDIR}
  rm -f sevmgr-stable && ln -s sevmgr-${SEVMGR_VER} sevmgr-stable
  cd -
  • To package the source files, type:
  make dist
  • To package the binary and the (HTML and PDF) documentation:
  make package
  • To browse the (just installed, if enabled) HTML documentation:
  midori file://${INSTALL_BASEDIR}/sevmgr-$SEVMGR_VER/share/doc/sevmgr/html/index.html
  • To browse the (just installed, if enabled) PDF documentation:
  evince ${INSTALL_BASEDIR}/sevmgr-$SEVMGR_VER/share/doc/sevmgr/html/refman.pdf
  • To run the local binary version:
  ./sevmgr/sevmgr -b
  • To run the installed version:
  ${INSTALL_BASEDIR}/sevmgr-$SEVMGR_VER/bin/sevmgr -b

Denis Arnaud (June 2015)