Needing assistance with an error in a script for viewing branches

I tried writing a code to open up files and search through the branches, but I am getting the following error. I don’t know if the error alone can help identify the problem, so please let me know if I need to upload the code here too, I’ll do that. The error is as follows:

IncrementalExecutor::executeFunction: symbol ‘ZN9__gnu_cxxneIPNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEEbRKNS_17__normal_iteratorIT_T0_EESG’ unresolved while linking [cling interface function]!
You are probably missing the definition of bool __gnu_cxx::operator!=<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > > const&, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > > const&)
Maybe you need to load the corresponding shared library?
IncrementalExecutor::executeFunction: symbol ‘ZN9__gnu_cxxeqIPKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESt6vectorIS6_SaIS6_EEEEbRKNS_17__normal_iteratorIT_T0_EESH’ unresolved while linking [cling interface function]!
You are probably missing the definition of bool __gnu_cxx::operator==<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const
, std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > >(__gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const*, std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > > const&, __gnu_cxx::__normal_iterator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const*, std::vector<std::__cxx11::basic_string<char, std::char_traits, std::allocator >, std::allocator<std::__cxx11::basic_string<char, std::char_traits, std::allocator > > > > const&)
Maybe you need to load the corresponding shared library?
IncrementalExecutor::executeFunction: symbol ‘_ZSt7forwardIRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEEOT_RNSt16remove_referenceIS8_E4typeE’ unresolved while linking [cling interface function]!
You are probably missing the definition of std::__cxx11::basic_string<char, std::char_traits, std::allocator > const& std::forward<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&>(std::remove_reference<std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&>::type&)
Maybe you need to load the corresponding shared library?

ROOT Version: 6.22/02
Platform: Ubuntu 20.04.5 LTS
Compiler: Not Provided

You might have an inconsistent environment (i.e. compiler and/or c++ library and/or ROOT build not matching). How and when did you install your version of ROOT? Did you upgrade the OS or the compiler since?

The version you are using is also quite old, consider upgrading to v6.30/02.

1 Like

Hello! Thank you for such quick response!
I installed it around 2 years back. And this is a work computer in which several other programs (that are old -research related-) are installed, so everytime I updated some library, some of those programs stopped working. That is why we refrain from upgrading things.
Can you please tell me if there is some workaround possible? Or updating is the only option?

I suspect that rebuilding the version of ROOT you have with the new compiler/library should be enough.

I am bit new to this, please let me get this straight. I update my libraries and compiler, then rebuild the root, and it will adapt them right? Didn’t root have its own compiler? Something called “Cling” or am I wrong? (Sorry if I am being too naive)

You should not need to upgrade the compiler (i.e. you likely already did using the OS update features)

Didn’t root have its own compiler?

Not exactly. ROOT (and Cling and Clang and LLVM as part of the ROOT build) needs an external compiler to compile the code. Cling/Clang/LLVM are solely used to implement run-time C++ introspection and provide a REPL environment.

1 Like

It worked! Thank you for the help and the knowledge about the compiler!