Macro fails during on-the-fly compilation

Dear experts,

while trying to include headers from TPCBase, a root macro fails during on-the-fly compilation with the error
“Trying to access a pointer that points to an invalid memory address.”.
The full output can be found here: https://cernbox.cern.ch/index.php/s/BiRu6oTcusU2f0m

I tried headers from different locations and found that at least TPCSimulation and TPCReconstruction also fail.

Is there any way for me to solve this issue?

Thanks for your help!
Best regards,
Thomas

Hello @tklemenz

Can you try to load manually the libraries before compiling the macro, e.g.

gSystem->Load("libTPCSimulation.so");
gSystem->Load("libTPCReconstruction.so");
gSystem->Load("libBase.so"); // though it should be already loaded by previous calls
.x test.C+

Root sometimes fails to extract the needed library name from the rootmap file. Also, the libTPCBase seems to have some problem with boos, if I try to load only it, it produces the same invalid pointer error (on ubuntu 18.04):

root [0] gSystem->Load("libTPCBase.so")
#0  0x00007f95cc572687 in __GI___waitpid (pid=20191, stat_loc=stat_loc
entry=0x7ffd9079bcd8, options=options
entry=0) at ../sysdeps/unix/sysv/linux/waitpid.c:30
#1  0x00007f95cc4dd067 in do_system (line=<optimized out>) at ../sysdeps/posix/system.c:149
#2  0x00007f95cd164454 in TUnixSystem::Exec (shellcmd=<optimized out>, this=0x5582b22057c0) at /home/shahoian/alice/sw/SOURCES/ROOT/v6-14-04/v6-14-04/core/unix/src/TUnixSystem.cxx:2119
#3  TUnixSystem::StackTrace (this=0x5582b22057c0) at /home/shahoian/alice/sw/SOURCES/ROOT/v6-14-04/v6-14-04/core/unix/src/TUnixSystem.cxx:2413
#4  0x00007f95c7a36085 in cling::MultiplexInterpreterCallbacks::PrintStackTrace() () from /home/shahoian/alice/sw/ubuntu1804_x86-64/ROOT/v6-14-04-1/lib/libCling.so
#5  0x00007f95c7a35b5d in cling_runtime_internal_throwIfInvalidPointer () from /home/shahoian/alice/sw/ubuntu1804_x86-64/ROOT/v6-14-04-1/lib/libCling.so
#6  0x00007f95cd8b4751 in ?? ()
#7  0x00007ffd9079e0f0 in ?? ()
#8  0x00007f95cd8b4858 in ?? ()
#9  0x0000000000000000 in ?? ()
Error in <HandleInterpreterException>: Trying to access a pointer that points to an invalid memory address..
Execution of your code was aborted.
In file included from G__CCDBDict dictionary payload:27:
In file included from /home/shahoian/alice/sw/ubuntu1804_x86-64/FairMQ/v1.3.6-1/include/fairmq/FairMQDevice.h:13:
In file included from /home/shahoian/alice/sw/ubuntu1804_x86-64/FairMQ/v1.3.6-1/include/fairmq/FairMQTransportFactory.h:17:
In file included from /home/shahoian/alice/sw/ubuntu1804_x86-64/FairMQ/v1.3.6-1/include/fairmq/MemoryResources.h:21:
In file included from /home/shahoian/alice/sw/ubuntu1804_x86-64/boost/v1.68.0-1/include/boost/container/flat_map.hpp:29:
In file included from /home/shahoian/alice/sw/ubuntu1804_x86-64/boost/v1.68.0-1/include/boost/container/detail/flat_tree.hpp:29:
/home/shahoian/alice/sw/ubuntu1804_x86-64/boost/v1.68.0-1/include/boost/container/detail/pair.hpp:132:89: warning: invalid memory pointer passed to a callee:
static piecewise_construct_t piecewise_construct = BOOST_CONTAINER_DOC1ST(unspecified, *std_piecewise_construct_holder<>::dummy);
                                                                                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/shahoian/alice/sw/ubuntu1804_x86-64/boost/v1.68.0-1/include/boost/container/detail/workaround.hpp:71:46: note: expanded from macro 'BOOST_CONTAINER_DOC1ST'
#define BOOST_CONTAINER_DOC1ST(TYPE1, TYPE2) TYPE2

Thanks a lot! That solves the problem.