Обеспечение многоплатформенной мобильности

Скомпилированный код MATLAB®, содержащий только файлы MATLAB, независим от платформы, как .jar файлы. Эти файлы могут использоваться из поля на любой платформе, если это платформа имеет или MATLAB или установленный MATLAB Runtime.

Однако, если ваш скомпилированный код MATLAB содержит файлы MEX, которые являются зависимым платформы, сделайте следующее:

  1. Скомпилируйте свой файл MEX однажды на каждой платформе, где вы хотите запустить свое приложение.

    Например, если вы работаете на машине Windows®, и вы хотите также работать на платформе Linux® 64-bit, скомпилировать my_mexC дважды (однажды на PC, чтобы получить my_mex.mexw64 и с другой стороны на Linux 64-битная машина, чтобы получить my_mex.mexa64).

  2. Скомпилируйте пакет на одной платформе с помощью mcc команда, с помощью -a отметьте, чтобы включать файл MEX, скомпилированный на другой платформе (платформах). В примере выше, запустите mcc на Windows и включают -a отметьте, чтобы включать my_mex.mexa64. В этом примере, mcc команда была бы:

    mcc -W 'java:mycomp,myclass' my_matlab_file.m -a my_mex.mexa64 

    Примечание

    В этом примере не необходимо явным образом включать my_mex.mexw64 (если вы работаете на Windows). Этот пример принимает тот my_mex.mexw64 и my_mex.mexa64 находитесь в той же папке.

Например, если вы работаете на машине Windows, и вы хотите гарантировать мобильность сгенерированного пакета, который вызывает yprimes.c файл (от matlabroot\extern\examples\mex) на Linux 64-битная платформа выполните следующий mcc команда:

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, сделайте следующее:

  1. Запустите mcc с -v опция, чтобы перечислить имена файлов MEX.

  2. Получите соответствующие версии этих файлов от версии MATLAB, установленного на вашей целевой операционной системе.

  3. Включайте эти версии в архив путем выполнения mcc с -a опция.

Внимание

Некоторая функциональность тулбокса не будет развертываема, когда скомпилировано в пакет Java® и работать на платформе кроме той, скомпилированной на. Это вызвано тем, что некоторый код тулбокса включает данные, которые могут быть конкретной платформой. Если это верно, можно только развернуть приложение, чтобы любить платформы. Например, Image Processing Toolbox функционируют IMHIST перестанет работать, если развернуто кросс-платформенный с undefined function ошибка.

Файлы JAR, произведенные MATLAB Compiler SDK™, протестированы и квалифицированы, чтобы работать на платформах, поддержанных MATLAB. См. Дорожную карту Платформы для MATLAB для получения дополнительной информации.

Для просмотра документации необходимо авторизоваться на сайте