I'm trying to understand how the runtime system of Matlab works.
My problem is that I thought that an executable would run against the MCR libraries (provided everything went ok, i.e. the target machine has the right MCR version installed, etc).
What I'm puzzled about is that when I ldd an executable (that runs ok) I see dependencies against the MCR libraries and dependencies against other local, non matlab libraries. For instance:
[casdanie@cina-hpws01 test]$ ldd ~/work/dynamo/releases/v-1.0.92/matlab/bin/dynamo
linux-vdso.so.1 => (0x00007fffc775a000)
libmwmclmcrrt.so => /usr/local/cina/matlab_tools/v714/runtime/glnxa64
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003816200000)
This seems to mean that, for instance, my application will look in the target machine for a local version of the pthread library, which means that the portability of the application is not ensured even if the final user has the right MCR installation...
Am I doing something wrong during compile time?