MATLAB: How to compile matlab coder package on different operating system

distributablemakefilematlab coder

Hi, I'm working on exporting a simulation from MATLAB into C for use on a linux cluster. Unfortunately, the cluster doesn't have MATLAB installed and I won't be able to install it. However, I have been able to convert the program into a standalone C application that runs on my Mac OSX 10.8. I can package the generated .c and .h files, but the generated makefile appears to be specific to the Mac that it was generated on.
My question is: how can I generate a makefile that will then compile the program for use on a linux machine. The makefile functionname_rtw.mk is much more complicated than any makefile I've created and refers directly to the MATLAB_ROOT, MATLAB_BIN, MATLAB_ARCH_BIN and ARCH folders. How can I make the whole package portable.
Thank you.

Best Answer

I think you can use the packNGo function from Simulink Coder to help relocate all necessary files for an external development environment:
web(fullfile(docroot, 'rtw/ug/program-builds.html#bqufw6y'))
The documentation also contains tips for modifying template makefiles for other platforms:
web(fullfile(docroot, 'rtw/ug/cross-compiling-code-generated-on-a-microsoft-windows-system.html'))
Related Question