Скомпилированный код MATLAB®, содержащий только файлы MATLAB, независим от платформы, как .jar
файлы. Эти файлы могут использоваться из поля на любой платформе, если это платформа имеет или MATLAB или установленный MATLAB Runtime.
Однако, если ваш скомпилированный код MATLAB содержит файлы MEX, которые являются зависимым платформы, сделайте следующее:
Скомпилируйте свой файл MEX однажды на каждой платформе, где вы хотите запустить свое приложение.
Например, если вы работаете на машине Windows®, и вы хотите также работать на платформе Linux® 64-bit, скомпилировать
дважды (однажды на PC, чтобы получить my_mex
C
и с другой стороны на Linux 64-битная машина, чтобы получить my_mex
.mexw64
). my_mex
.mexa64
Скомпилируйте пакет на одной платформе с помощью mcc
команда, с помощью -a
отметьте, чтобы включать файл MEX, скомпилированный на другой платформе (платформах). В примере выше, запустите mcc
на Windows и включают -a
отметьте, чтобы включать
. В этом примере, my_mex
.mexa64mcc
команда была бы:
mcc -W 'java:mycomp,myclass' my_matlab_file.m -a my_mex.mexa64
В этом примере не необходимо явным образом включать
(если вы работаете на Windows). Этот пример принимает тот my_mex
.mexw64
и my_mex
.mexw64
находитесь в той же папке. my_mex
.mexa64
Например, если вы работаете на машине Windows, и вы хотите гарантировать мобильность сгенерированного пакета, который вызывает yprimes.c
файл (от
) на Linux 64-битная платформа выполните следующий matlabroot
\extern\examples\mexmcc
команда:
mcc -W 'java:mycomp,myclass' callyprime.m -a yprime.mexa64
callyprime.m
может быть простая функция MATLAB можно следующим образом:function callyprime disp(yprime(1,1:4));
yprime.mexa64
файл находится в той же папке как ваш Windows MEX-file.Если вы не уверены, если ваш файл JAR содержит файлы MEX, сделайте следующее:
Некоторая функциональность тулбокса не будет развертываема, когда скомпилировано в пакет Java® и работать на платформе кроме той, скомпилированной на. Это вызвано тем, что некоторый код тулбокса включает данные, которые могут быть конкретной платформой. Если это верно, можно только развернуть приложение, чтобы любить платформы. Например, Image Processing Toolbox функционируют IMHIST
перестанет работать, если развернуто кросс-платформенный с undefined function
ошибка.
Файлы JAR, произведенные MATLAB Compiler SDK™, протестированы и квалифицированы, чтобы работать на платформах, поддержанных MATLAB. См. Дорожную карту Платформы для MATLAB для получения дополнительной информации.