Vtd header files are not accessible

Dear Experts,
I am trying to build my (large) project vs ROOT 6.23.01 from LCG-nightlies.
And I have a compiler error due to misssing vdt-header files:

/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3python3/Fri/ROOT/HEAD/x86_64-centos7-gcc9-opt/include/ROOT/RVec.hxx:48:10: fatal error: vdt/vdtMath.h: No such file or directory
48 | #include <vdt/vdtMath.h>
| ^~~~~~~~~~~~~~~

I’ve have a look into ROOT-cmake files:

grep -i vdt /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3python3/Fri/ROOT/HEAD/x86_64-centos7-gcc9-opt/cmake/.

and I see that while vdt linerary is explicitely picked up via ROOTVecOps target

set_target_properties(ROOT::ROOTVecOps PROPERTIES
INTERFACE_COMPILE_FEATURES “cxx_std_17”
INTERFACE_INCLUDE_DIRECTORIES “${_IMPORT_PREFIX}/include”
INTERFACE_LINK_LIBRARIES “ROOT::Core;/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3python3/Fri/vdt/0.4.3/x86_64-centos7-gcc9-opt/lib/libvdt.so”
)

but the vdt header files are not propagated. Am I doing something totally wrong?


Please read tips for efficient and successful posting and posting code

ROOT Version: Not Provided
Platform: Not Provided
Compiler: Not Provided


Hi,
my guess is that you source’d things in such a way that ROOT is available in your environment but not the vdt library that it was built with.

You can try with a full view rather than just the dev3python3 environment.

EDIT:

this should give you a full environment including the vdt ROOT looks for:

source /cvmfs/sft.cern.ch/lcg/views/dev3python3/latest/<Platform+compiler>/setup.sh

Dear Enrico
thank you very much. Code compiler now.
But I have a problem from REFLEX_GENERATE_DICTIONAR

I have a function

function( MAKE_DICT name header selection )
REFLEX_GENERATE_DICTIONARY( {name} {header} SELECTION {selection}) add_library( {name}Dict MODULE {name}.cxx) add_dependencies({name}Dict {name}-dictgen ostap ROOT::MathMore ROOT::GenVector ROOT::PyROOT3) target_link_libraries ( {name}Dict ostap ROOT::MathMore ROOT::GenVector ROOT::PyROOT3 )
endfunction( MAKE_DICT )

that produces an error: [1/5] Generating ostap.cxx, ostapDict.rootmap
FAILED: source/ostap.cxx source/ostapDict.rootmap
cd /afs/cern.ch/user/i/ibelyaev/cmtuser/RELEASE/ostap/build/source && /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Tue/ROOT/v6-22-00-patches/x86_64-centos7-gcc9-opt/bin/genreflex /afs/cern.ch/user/i/ibelyaev/cmtuser/RELEASE/ostap/source/src/dict/Ostap.hh -o ostap.cxx --rootmap=ostapDict.rootmap --rootmap-lib=libostapDict --select=/afs/cern.ch/user/i/ibelyaev/cmtuser/RELEASE/ostap/source/src/dict/Ostap.xml --gccxmlpath=/bin -I/afs/cern.ch/user/i/ibelyaev/cmtuser/RELEASE/ostap/source -I/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3python3/Fri/ROOT/HEAD/x86_64-centos7-gcc9-opt/include -I/cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3python3/Fri/ROOT/HEAD/x86_64-centos7-gcc9-opt/include -I/afs/cern.ch/user/i/ibelyaev/cmtuser/RELEASE/ostap/source/include -I/afs/cern.ch/user/i/ibelyaev/cmtuser/RELEASE/ostap/source/src -I/cvmfs/sft.cern.ch/lcg/releases/Python/3.7.6-7a85e/x86_64-centos7-gcc9-opt/include/python3.7m
/bin/sh: /cvmfs/sft-nightlies.cern.ch/lcg/nightlies/dev3/Tue/ROOT/v6-22-00-patches/x86_64-centos7-gcc9-opt/bin/genreflex: No such file or directory
ninja: build stopped: subcommand failed.

note that it refers to missing genreflex in “dev3”, not “dev3python3” slot…

Uhm to me it seems like an issue with the LCG nightly env, but @Axel or @pcanal can probably comment with more authority.

Cheers,
Enrico

@ganis @mato are possible candidates for solving LCG issues here! Gerri, Pere, can you help Vanya?

Ticket created at https://sft.its.cern.ch/jira/browse/SPI-1700 .

Hi @ibelyaev ,

can you give us a way to reproduce the issues you are having? E.g. a minimal CMakefile or a program that links to ROOT?

Ivan for the LCG team

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.