Skip to content

WIP: a couple corrections in CMake files to compile with netio, few other modifications

Alex Toldaiev requested to merge (removed):stripFelixNetIO into devel

The main addition is the tbb library in the CMakeLists when NetIO is enabled: the netio depends on certain symbols from the tbb. In addition the standard tbb installed with yum does not seem to work all right. And following TDAQ' prescriptions, we get the tbb from:

/cvmfs/sft.cern.ch/lcg/releases/LCG_94/tbb/2018_U1/x86_64-centos7-gcc8-opt/

Another CMake change: the minimum gcc version is 8. Compilations with older gcc would run into some unclear issues in netio.

It compiles with the TDAQ setup script, that looks like this at our test bench PC:

#!/bin/bash

version=x86_64-centos7-gcc8-opt

source tdaq/cmake_tdaq/bin/setup.sh $version
source /cvmfs/sft.cern.ch/lcg/releases/gcc/8.2.0/x86_64-centos7/setup.sh

export NETIO_DIR=`pwd`/tdaq/installed
export LD_LIBRARY_PATH=`pwd`/tdaq/installed/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/cvmfs/sft.cern.ch/lcg/releases/LCG_94/tbb/2018_U1/x86_64-centos7-gcc8-opt/lib:$LD_LIBRARY_PATH

And to compile YARR with Netio:

cd src
mkdir -p build

cmake3 -B build/ -S . -D CMAKE_TOOLCHAIN_FILE=cmake/linux-gcc -D ENABLE_NETIO:BOOL=ON -D NETIO_DIR:PATH=${NETIO_DIR}/x86_64-centos7-gcc8-opt -D TBB_DIR:PATH=/cvmfs/sft.cern.ch/lcg/releases/LCG_94/tbb/2018_U1/x86_64-centos7-gcc8-opt/
cd build
make -j 6

And there is a number of smaller corrections, like the verbose and debug printouts in the NetioRxCore and NetioTxCore.

Edited by Bruce Joseph Gallop

Merge request reports