MATLAB Answers

0

Running a deployed application in linux with matlab installed

Asked by Curtis Mayberry on 12 Jan 2018
Latest activity Answered by Curtis Mayberry on 12 Jan 2018
I am trying to run a deployed application on a linux machine that already has matlab installed. It doesn't have the mcr installed. Can someone please help me get my application running? I think I just don't have the environment setup correctly.
It was suggested on the page below that I just needed to add to the LD_LIBRARY_PATH variable. https://www.mathworks.com/help/compiler_sdk/dotnet/install-the-matlab-runtime.html "To run deployed MATLAB code against MATLAB Runtime on Linux, Linux x86-64, or the mcr_root/runtime/<arch> folder must appear on your LD_LIBRARY_PATH before matlabroot/runtime/<arch>."
However after having done this I still have an issue with running my compiled program as shown in the following terminal session:
sh-4.1$ pwd
/home/mayberc/testCompile/addTry/for_testing
sh-4.1$ ls
addTry mccExcludedFiles.log readme.txt requiredMCRProducts.txt run_addTry.sh splash.png
sh-4.1$ echo $LD_LIBRARY_PATH
/tools/platform/10.1/linux2.6-glibc2.3-x86_64/lib:/tools/platform/8.3/linux2.6-glibc2.3-x86_64/lib:/rds/prod/tools/matlab/v2017a/runtime/glnxa64
sh-4.1$ ./addTry hi
./addTry: error while loading shared libraries: libmwlaunchermain.so: cannot open shared object file: No such file or directory
sh-4.1$
My compiled application source is the following simple program:
%addTry.m
function addTry(in)
out = strcat('try',in);
fprintf(1,'%s\n',out)
in_new = input('next string:');
out = strcat('try',in_new);
fprintf(1,'%s\n',out)
end
I am using R2017a on a Red hat machine.

  0 Comments

Sign in to comment.

1 Answer

Answer by Curtis Mayberry on 12 Jan 2018
 Accepted Answer

I figured out what I was missing. There are other directores that need to be added to the LD_LIBRARY_PATH environment variable.
I had to set it to: ${LD_LIBRARY_PATH}: MATLAB_ROOT/runtime/glnxa64: MATLAB_ROOT/bin/glnxa64: MATLAB_ROOT/sys/os/glnxa64: MATLAB_ROOT/sys/opengl/lib/glnxa64
Before I only had the first path and needed to add the other 3 to it also.
Regards, Curtis

  0 Comments

Sign in to comment.