Dear experts,
I stored some nested vectors in ROOT Ttree which required to generate dictionaries:
This worked fine on a local SL7 machine. However once I send the compiled program to the grid, it complains cannot load the generated dictionaries,
cling::DynamicLibraryManager::loadLibrary(): /dune/app/users/weishi/dunetpclegacy/srcs/dunetpc/dune/CAFMaker/AutoDict_vector_vector_vector_double______cxx.so: cannot open shared object file: No such file or directory
cling::DynamicLibraryManager::loadLibrary(): /dune/app/users/weishi/dunetpclegacy/srcs/dunetpc/dune/CAFMaker/AutoDict_vector_vector_vector_double______cxx.so: cannot open shared object file: No such file or directory
Error in <TTree::Branch>: The class requested (vector<vector<vector<vector<vector<unsigned long> > > > >) for the branch "FD_evt_hadron_throw_result_NDLAr" is an instance of an stl collection and does not have a compiled CollectionProxy. Please generate the dictionary for this collection (vector<vector<vector<vector<vector<unsigned long> > > > >) to avoid to write corrupted data.
where the directory /dune/app/users/weishi/
is from my local machine, apprarently it can not find this from the grid worker node. Ideally, this directory should be replaced by /srv
on the grid.
I’ve tried adding the dictionaries path on the grid (i.e. ${PWD}
) to LD_LIBRARY_PATH
:
export LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:${PWD}
But it’s still giving me the same errors above.
How should I resolve this?
Thanks,
Wei