Is there a list of MATLAB Runtime dependencies?
25 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Nicholas Haas
el 23 de Sept. de 2017
Editada: Nicholas Haas
el 24 de Sept. de 2017
Greetings,
I was deploying the MATLAB Runtime (aka MCR) to a headless Redhat Enterprise Linux (RHEL) 7.4 environment when I noticed that I was missing several dependencies.
I installed MCR version R2017b (9.3) with this command (which succeeded, see install.txt):
./install -mode silent -agreeToLicense yes
I then set / verified the LD_LIBRARY_PATH environment variable:
$ echo $LD_LIBRARY_PATH
:/usr/local/MATLAB/MATLAB_Runtime/v93/runtime/glnxa64:/usr/local/MATLAB/MATLAB_Runtime/v93/bin/glnxa64:/usr/local/MATLAB/MATLAB_Runtime/v93/sys/os/glnxa64:
Finally, I tested the Shared Object files included in the installation to verify they have available all the libraries they need:
find /usr/local/MATLAB -type f -name '*.so*' -exec ldd {} \; | grep 'not found' | sort | uniq
This resulted in the libraries listed in the attached notFound.txt. While I can easily determine which packages provide these libraries with Yellowdog Updater, Modified (yum) and install them, was wondering (especially for future deployments of future versions) if there exists a list of packages for supported Linux distributions that need to be deployed alongside the MCR. I checked the MCR Documentation and didn't see a list of said libraries.
Thanks
0 comentarios
Respuesta aceptada
Mikhail
el 24 de Sept. de 2017
Unfortunately, there seems to be no such list of libraries required to run MCR (not to mention MATLAB itself). In fact, i've seen cases where even "officially supported" Linux distros were lacking libraries required for a particular functionality of MATLAB or Simulink. The list of required libraries also changes from version to version.
You are on the right track of inspecting MCR's libraries by your own.
I would recommend using "readelf -d" to list only direct dependencies of a shared library (unlike ldd listing dependencies recursively). This should be faster and more secure than using ldd.
1 comentario
Nicholas Haas
el 24 de Sept. de 2017
Editada: Nicholas Haas
el 24 de Sept. de 2017
Más respuestas (1)
Image Analyst
el 23 de Sept. de 2017
You can run the dependency report on your code. Or if you have a compiled version of your code, run DependencyWalker (Google it).
1 comentario
Ver también
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!