PCM file not found

I have a number of libraries containing custom classes for use in the ROOT framework. They are contained in a contained in a directory ($HOME/.local/lib/), together with their *_rdict.pcm files.

However, when I try to load these (either automatically or manually) with

gROOT->ProcessLine(".L path_to_library.dylib")

I get the message

Error in <TCling::LoadPCM>: ROOT PCM <root_build_directory/bin/library_rdict.pcm> file does not exist

As I understand it, the *_rdict.pcm file should be either in the same file as the library (which it is), or in the LD_LIBRARY_PATH. The directory containing both the *_rdict.pcm file and the library is in both LD_LBIRARY_PATH and DYLD_LIBRARY_PATH.

I’m not sure why ROOT seems to be looking in the root build directory bin folder for the pcm file. Is there a way to correct this behavior and direct ROOT to search the correct directory?


Please read tips for efficient and successful posting and posting code

_ROOT Version: 6.27/01
_Platform: macOS
_Compiler: clang-1300.0.29.3

Hi @timgray,

Indeed, xxx_rdict.pcm files should be located either in the same directory or LD_LIBRARY_PATH. See also related forum topic: Cannot find my rdict.pcm files.

Maybe @Axel or @pcanal have any idea?


Thanks for the reply @jalopezg. I saw the post you linked - this is one of the reasons as I’m confused as the error message would suggest that ROOT isn’t looking in either of those places. In fact, I still get the errors when I run root in the directory where the libraries are stored.


I agree, that seems to be a bug. Can you open a ticket at Sign in to GitHub · GitHub please? Thank you!

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