Self-contained Executable

I have successfully embedded the cling interpreter into a C++ executable, and I would like to say the whole process was pretty smooth. Thanks for good documentation and a smooth build process.

Now I’m just getting greedy and I want to know if it is possible to embed the resource files that are normally referenced by llvmdir. Currently my cling::Interpreter instantiation looks like:

  std::vector<const char*> args = {"-nostdinc++","-nobuiltininc"};
  cling::Interpreter interpreter(args.size(),args.data(),llvmdir.c_str()); 

Provided I give llvmdir the appropriate filesystem path everything works great. What I would rather do is embed the supporting files (or precompiled versions) into the executable. I have found some breadcrumbs on this forum that this has been possible, at least from ROOT, but the current status is unclear to me. The last piece of information I found was this [url]Cannot find my rdict.pcm files post where it looked like maybe this would happen in v6.10 of ROOT, however my interest is specifically only cling.

Hi,

We never tried that. If you have a solution I’d be definitely interested to hear it!

Cheers, Axel.