I have successfully used Compiler SDK to deploy a Java wrapper around my home-made m-file wrapper around "intlinprog" (more than just a wrapper, but a wrapper on steroids, adding required functionality).
I would like to do the same for a specific non-native library function for graph layout. Specifically, Kamada-Kawai (KK) layout, which is part of the MATLAB-BGL library, which in turn seems to consist of MATLAB wrappers around a C++ Boost graph library: https://github.com/dgleich/matlab-bgl/blob/master/kamada_kawai_spring_layout.m.
The MATLAB-BGL library contains many files for the KK layout function:
- matlab_bgl/private/kamada_kawai_spring_layout_mex.c
- matlab_bgl/private/kamada_kawai_spring_layout_mex.mexa64
- matlab_bgl/private/kamada_kawai_spring_layout_mex.mexglx
- matlab_bgl/private/kamada_kawai_spring_layout_mex.mexmac
- matlab_bgl/private/kamada_kawai_spring_layout_mex.mexmaci
- matlab_bgl/private/kamada_kawai_spring_layout_mex.mexw32
- matlab_bgl/private/kamada_kawai_spring_layout_mex.mexw64
(1) Can I deploy a Java wrapper of the kamada_kawai_spring_layout.m, or a Java wrapper of my own wrapper of kamada_kawai_spring_layout.m?
(2) Would it be a matter of supplying the above mex files along with the Java package?
(3) I am still on Matlab 2019a, but may be migrated to a newer version soon. For 2019a, however, I need to compile for Windows and Linux separately, e.g., running Compiler SDK on a Windows machine and in an Ubuntu VM. Seeing as the above mex files includes a mexglx, is the compilation process the same, but keeping in mind to supply all the mex files regardless of which OS I'm deploying to?