libRIO.dll not found but libRIO.so exists

I am trying to run root with a virtual reconstruction package but it displays a ‘file not found’ error. I have checked the /root/lib directory and find libRIO.so, which is expected, but ROOT still asks for the libRIO.dll file. Similarly, libEdr.so and libEDA.so exist but still throw an error. I have checked my paths and they lead to the lib folder correctly. I have tried rebuilding ROOT within the container but the same issue appears.

I am running ROOT 5.34.38 in a Docker container with Ubuntu 20.04 and Windows 10 Home 19041 as the host platform. Builddir is the root directory in which I built with cmake.

ROOT Version: 5.34.38
Platform: Ubuntu 20.04
Compiler: gcc-4.8 g+±4.8

ROOT 5.34/38 (v5-34-38@v5-34-38, Mar 12 2018, 15:49:39 on linuxx8664gcc)

CINT/ROOT C/C++ Interpreter version 5.18.00, July 2, 2010
Type ? for help. Commands must be C++ statements.
Enclose multiple statements between { }.
Error in <TUnixSystem::DynamicPathName>: libRIO.dll does not exist in /workdir/builddir/lib:/workdir/builddir/lib:/::.:/workdir/builddir/lib::/workdir/builddir/cint/cint/stl
Error in <TUnixSystem::DynamicPathName>: libEdr[.so | .dll | .dylib | .sl | .dl | .a] does not exist in /workdir/builddir/lib:/workdir/builddir/lib:/::.:/workdir/builddir/lib::/workdir/builddir/cint/cint/stl
Error in <TUnixSystem::DynamicPathName>: libEDA[.so | .dll | .dylib | .sl | .dl | .a] does not exist in /workdir/builddir/lib:/workdir/builddir/lib:/::.:/workdir/builddir/lib::/workdir/builddir/cint/cint/stl
root [0]

Hello, and welcome to the ROOT forum!

Am I assuming correctly that ROOT is started here as part of another package? If you can run just root -l without errors, the problem might rather be with the reconstruction package than with ROOT.

Please note that ROOT 5.34 is very old. If possible, consider upgrading to ROOT 6.

Perhaps @Axel has more suggestions?

Cheers,
Jakob

And make sure that you set up ROOT before: source wherever-ROOT-is-installed/bin/thisroot.sh

By set-up, do you mean set the paths and environment variables before running thisroot.sh? I ran thisroot.sh immediately after building ROOT and before installing the reconstruction package.

Sorry for dropping this!

When you start a new terminal, and before starting root, you need to run wherever-ROOT-is-installed/bin/thisroot.sh. Does that fix it?

Cheers, Axel.