Home | News | Documentation | Download

Make error of an example


I have installed Garfield++ on lxplus but during building an example by using make , i found the attached error !! Does anyone know where exactly the problem and how to solve ??

/cvmfs/sft.cern.ch/lcg/releases/CMake/3.18.4-2ffec/x86_64-centos7-gcc10-opt/bin/cmake: /cvmfs/sft.cern.ch/lcg/external/gcc/4.8.4/x86_64-slc6-gcc48-opt/lib64/libstdc++.so.6: version GLIBCXX_3.4.22' not found (required by /cvmfs/sft.cern.ch/lcg/releases/CMake/3.18.4-2ffec/x86_64-centos7-gcc10-opt/bin/cmake) /cvmfs/sft.cern.ch/lcg/releases/CMake/3.18.4-2ffec/x86_64-centos7-gcc10-opt/bin/cmake: /cvmfs/sft.cern.ch/lcg/external/gcc/4.8.4/x86_64-slc6-gcc48-opt/lib64/libstdc++.so.6: version GLIBCXX_3.4.20’ not found (required by /cvmfs/sft.cern.ch/lcg/releases/CMake/3.18.4-2ffec/x86_64-centos7-gcc10-opt/bin/cmake)
/cvmfs/sft.cern.ch/lcg/releases/CMake/3.18.4-2ffec/x86_64-centos7-gcc10-opt/bin/cmake: /cvmfs/sft.cern.ch/lcg/external/gcc/4.8.4/x86_64-slc6-gcc48-opt/lib64/libstdc++.so.6: version GLIBCXX_3.4.26' not found (required by /cvmfs/sft.cern.ch/lcg/releases/CMake/3.18.4-2ffec/x86_64-centos7-gcc10-opt/bin/cmake) /cvmfs/sft.cern.ch/lcg/releases/CMake/3.18.4-2ffec/x86_64-centos7-gcc10-opt/bin/cmake: /cvmfs/sft.cern.ch/lcg/external/gcc/4.8.4/x86_64-slc6-gcc48-opt/lib64/libstdc++.so.6: version GLIBCXX_3.4.21’ not found (required by /cvmfs/sft.cern.ch/lcg/releases/CMake/3.18.4-2ffec/x86_64-centos7-gcc10-opt/bin/cmake)
/cvmfs/sft.cern.ch/lcg/releases/CMake/3.18.4-2ffec/x86_64-centos7-gcc10-opt/bin/cmake: /cvmfs/sft.cern.ch/lcg/external/gcc/4.8.4/x86_64-slc6-gcc48-opt/lib64/libstdc++.so.6: version `CXXABI_1.3.9’ not found (required by /cvmfs/sft.cern.ch/lcg/releases/CMake/3.18.4-2ffec/x86_64-centos7-gcc10-opt/bin/cmake)
make: *** [cmake_check_build_system] Error 1

there seem to be some inconsistencies in your environment (gcc 10 vs. gcc 4.8.4). How did you set it up? Can you try with an LCG view, for instance

source /cvmfs/sft.cern.ch/lcg/views/LCG_99/x86_64-centos7-gcc10-opt/setup.sh

Thanks a lot , it is working , but when i run any example this error appear ,is it has a relation??

terminate called after throwing an instance of ‘std::logic_error’
what(): basic_string::_M_construct null not valid
Aborted (core dumped)

Hi @Tahany,

To me it seems that it doesn’t; the exception that you mentioned is thrown if you construct a std::string providing (const char *)nullptr as argument. We are missing important information, though; could you please attach the the code that you are trying to run?


Hello @jalopezg

Thanks for your response , the idea that , i get this error during running any Garfield++ example so , I thought that , anyway I attach a general basic example ( gem example) and i will try to mimic your solution into the others gem.C (4.5 KB) s .

Best wishes,

The culprit might be the line
const std::string path = getenv("GARFIELD_HOME");
Is this variable defined in your environment? What do you get when you type



I get this directory

Ah, sorry for that, I think that may be a side effect of some recent changes.
Where is the Garfield++ source directory on your machine?
Can you try re-setting the GARFIELD_HOME variable to this directory? Something like

export GARFIELD_HOME=/home/user/path_to_garfield_src_dir

@hschindl , Exactly the problem was as you mentioned , it was in defining GAFIELD_HOME , now most of them are working well , thank you :slight_smile:
but , what if I got this error , what do you think about ?
terminate called after throwing an instance of ‘std::bad_alloc’
what(): std::bad_alloc
Aborted (core dumped)

Hm, that seems to be something else. Is this what you get when you run the gem.C program you sent earlier? Can you post/attach the full output you get when running the program?

No, it has no relation about garfield basic example , it is another one related to RPC.

Prepared weighting field for readout group “BotGra”.
E = ( -0.00000000, -0.00000000 70833.71188276), V = 7083.37941689, status = -5
Added readout electrode “BotGra”.
All signals are reset.
Sensor::SetTimeWindow: Resetting all signals.
Event = 1
: Cluster = 1 :
clust_present :1, nel: 25
j= 0xele, yele, zele, tele: -4.72707e-05 -7.29063e-05 0.0332024 0.00268757
terminate called after throwing an instance of ‘std::bad_alloc’
what(): std::bad_alloc
Aborted (core dumped)

Can you attach the source code of the program?

could i send it by email because it is not for public ?!

Yes, no prob.

Ok , Thanks

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