Skip to content

ulrikpedersen/framereceiver

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Stories in Ready FrameReceiver

FrameReceiver is an application to enable reception of frames of detector data transmitted over a network connection as a UDP stream. FrameReceiver constructs data frames in shared memory buffers and communicates with external applications to allow processing and storage.

Build Status

External Software Dependencies

The following libraries and packages are required:

  • CMake : build management system (version >= 2.8)
  • Boost : portable C++ utility libraries. The following components are used - program_options, unit_test_framework, date_time, interprocess, bimap (version >= 1.41)
  • ZeroMQ : high-performance asynchronous messaging library (version >= 3.2.4)
  • Log4CXX: Configurable message logger (version >= 0.10.0)

Installing dependencies

The supported development platform is Linux RedHat 6 (RHEL6) however distributions like CentOS and Scientific Linux are essentially clones of RHEL and can be used as free alternatives to RHEL.

Most of the dependencies are available from the RHEL (or CentOS) repositories, but a few (log4cxx and zeromq) must be installed from the EPEL repository (or built from source).

The following is an exmaple of installing dependencies on CentOS 6:

# Install the development environment: gcc, make, etc.
yum groupinstall "Development tools"

# Install the cmake and boost libraries
yum install cmake boost-devel

# Enable the EPEL repositories - the exact method may be dependent
# on the distribution. This works for CentOS 6:
yum install epel-release

# Install the zeromq and log4cxx libraries from the EPEL repo
yum --enablerepo=epel install zeromq3-devel log4cxx-devel

Building

FrameReceiver is built using CMake and make. FrameReceiver is configured and built with the following commands:

mkdir build && cd build
cmake -DBoost_NO_BOOST_CMAKE=ON ..
make

The Boost_NO_BOOST_CMAKE=ON flag is required on systems with Boost installed on system paths (e.g. from a package repository) where there is a bug in the installed CMake package discovery utilities. Non-default installations of the above libraries and packages can be used by setting the following flags:

  • BOOST_ROOT
  • ZEROMQ_ROOTDIR
  • LOG4CXX_ROOT_DIR

About

Percival frame receiver service application

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C++ 93.0%
  • C 4.6%
  • CMake 1.6%
  • Python 0.8%