compiler.build.standaloneApplication

Создайте автономное приложение для развертывания вне MATLAB

Описание

пример

compiler.build.standaloneApplication(AppFile) создает развертываемое автономное приложение с помощью функции MATLAB®, класса или приложения, заданного AppFile. Исполняемый тип определяется вашей операционной системой. Сгенерированный исполняемый файл не включает MATLAB Runtime или инсталлятор.

пример

compiler.build.standaloneApplication(AppFile,Name,Value) создает автономное приложение с дополнительными опциями, заданными с помощью одного или нескольких аргументов значения имени. Опции включают исполняемое имя, помогают тексту и изображению значка.

пример

compiler.build.standaloneApplication(opts) создает автономное приложение с дополнительными опциями, заданными с помощью compiler.build.StandaloneApplicationOptions объект opts. Вы не можете задать никакие другие опции с помощью аргументов значения имени.

пример

results = compiler.build.standaloneApplication(___) возвращает информацию о сборке как compiler.build.Results объект с помощью любой из комбинаций аргументов в предыдущих синтаксисах. Информация о сборке состоит из типа сборки, путей к скомпилированным файлам и опций сборки.

Примеры

свернуть все

Создайте автономное приложение с помощью файла функции, который генерирует магический квадрат.

В MATLAB найдите код MATLAB, который вы хотите развернуть как автономное приложение. В данном примере компиляция с помощью файла magicsquare.m расположенный в matlabroot\extern\examples\compiler.

appFile = fullfile(matlabroot,'extern','examples','compiler','magicsquare.m');

Создайте автономное приложение с помощью compiler.build.standaloneApplication команда.

compiler.build.standaloneApplication(appFile);

Этот синтаксис генерирует следующие файлы в папке под названием magicsquarestandaloneApplication в вашей текущей рабочей директории:

  • magicsquare.exe или magicsquare — Исполняемый файл, который имеет .exe расширение, если скомпилировано в системе Windows® или никаком расширении, если скомпилировано на Linux® или macOS системах.

  • run_magicsquare.sh — Файл сценария оболочки, который устанавливает путь к библиотеке и выполняет приложение. Этот файл только сгенерирован на Linux и macOS системах.

  • mccExcludedFiles.log — Файл журнала, который содержит список любых функций тулбокса, которые не были включены в приложение. Для получения информации о неподдерживаемых функциях смотрите Ограничения MATLAB Compiler.

  • readme.txt — Текстовый файл, который содержит информацию о необходимых условиях развертывания и списке файлов к пакету для развертывания.

  • requiredMCRProducts.txt — Текстовый файл, который содержит идентификаторы продукта продуктов, требуемых MATLAB Runtime запустить приложение.

  • unresolvedSymbols.txt — Текстовый файл, который содержит информацию о неразрешенных символах.

Запускать magicsquare из MATLAB с входным параметром 4, перейдите к magicsquarestandaloneApplication папка и выполняет одну из следующих команд на основе вашей операционной системы:

Операционная системаПротестируйте в командном окне MATLAB
Windows!magicsquare 4
macOSsystem(['./run_magicsquare.sh ',matlabroot,' 4']);
Linux!./magicsquare 4

Запускать magicsquare из MATLAB с входным параметром 4, перейдите к magicsquarestandaloneApplication папка и выполняет одну из следующих команд на основе вашей операционной системы:

Операционная системаПротестируйте в командном окне MATLAB
Windows!magicsquare 4
macOSsystem(['./run_magicsquare.sh ',matlabroot,' 4']);
Linux!./magicsquare 4

Приложение выводит 4- 4 магический квадрат.

    16     2     3    13
     5    11    10     8
     9     7     6    12
     4    14    15     1

Чтобы запустить ваше автономное приложение за пределами MATLAB, см. Запущенное Автономное приложение.

Создайте автономное приложение и настройте его с помощью аргументов значения имени.

Запишите функцию MATLAB, которая использует подфункцию, чтобы вычислить диагональные компоненты магического квадрата. Сохраните функции в файлы с именем mymagicdiag.m и mydiag.m.

function out = mymagicdiag(in)
X = magic(in);
out = mydiag(X);
function out = mydiag(in)
out = [diag(in)]';

Создайте автономное приложение с помощью mymagicdiag.m. Используйте аргументы пары "имя-значение", чтобы задать исполняемое имя, добавить mydiag.m файл функции, и интерпретирует входные параметры командной строки, когда числовой удваивается.

compiler.build.standaloneApplication('mymagicdiag.m',...
    'ExecutableName','MagicDiagApp',...
    'AdditionalFiles','mydiag.m',...
    'TreatInputsAsNumeric','On')

Функция генерирует следующие файлы в папке под названием MagicDiagAppstandaloneApplication в вашей текущей рабочей директории:

  • MagicDiagApp.exe или MagicDiagApp

  • run_MagicDiagApp.sh (только на Linux и macOS системах)

  • mccExcludedFiles.log

  • readme.txt

  • requiredMCRProducts.txt

Запускать MagicDiagApp из MATLAB с входным параметром 4, перейдите к MagicDiagAppstandaloneApplication папка и выполняет одну из следующих команд на основе вашей операционной системы:

Операционная системаПротестируйте в командном окне MATLAB
Windows!MagicDiagApp 4
macOSsystem(['./run_MagicDiagApp.sh ',matlabroot,' 4']);
Linux!./MagicDiagApp 4

Приложение выводит диагональные элементы 4- 4 магический квадрат.

    16     11     6    1

Создайте несколько автономных приложений в системе Windows с помощью compiler.build.StandaloneApplicationOptions объект.

В данном примере используйте файл magicsquare.m расположенный в matlabroot\extern\examples\compiler.

appFile = fullfile(matlabroot,'extern','examples','compiler','magicsquare.m');

Создайте StandaloneApplicationOptions объект с помощью appFile. Используйте аргументы значения имени, чтобы задать общую выходную директорию, интерпретировать входные параметры командной строки, когда числовой удваивается, и информация о прогрессе отображения во время процесса сборки.

opts = compiler.build.StandaloneApplicationOptions(appFile,...
    'OutputDir','D:\Documents\MATLAB\work\MagicBatch',...
    'TreatInputsAsNumeric','On',...
    'Verbose','On')
opts =

  StandaloneApplicationOptions with properties:

            CustomHelpTextFile: ''
              EmbedArchive: on
            ExecutableIcon: 'C:\Program Files\MATLAB\R2021a\toolbox\compiler\resources\default_icon_48.png'
            ExecutableName: 'magicsquare'
    ExecutableSplashScreen: 'C:\Program Files\MATLAB\R2021a\toolbox\compiler\resources\default_splash.png'
         ExecutableVersion: '1.0.0.0'
                   AppFile: 'C:\Program Files\MATLAB\R2021a\extern\examples\compiler\magicsquare.m'
      TreatInputsAsNumeric: on
           AdditionalFiles: {}
       AutoDetectDataFiles: on
                   Verbose: on
                 OutputDir: 'D:\Documents\MATLAB\work\MagicBatch'

Создайте автономное приложение путем передачи StandaloneApplicationOptions возразите как вход против функции сборки.

compiler.build.standaloneApplication(opts);

Создавать новое автономное приложение с помощью файла функции example2.m с теми же опциями используйте запись через точку, чтобы изменить AppFile из существующего StandaloneApplicationOptions объект прежде, чем запустить сборку функционирует снова.

opts.AppFile = 'example2.m';
compiler.build.standaloneApplication(opts);

Путем изменения AppFile аргумент и перекомпиляция, можно создать несколько приложений с помощью того же объекта опций.

Создайте автономное приложение и сохраните информацию о типе сборки, сгенерированных файлах, и создайте опции к compiler.build.Results объект.

Компиляция с помощью файла magicsquare.m расположенный в matlabroot\extern\examples\compiler.

results = compiler.build.standaloneApplication('magicsquare.m')
results = 

  Results with properties:

            BuildType: 'standaloneApplication'
                Files: {2×1 cell}
              Options: [1×1 compiler.build.StandaloneApplicationOptions]

Files свойство содержит пути к magicsquare независимый исполняемый файл и readme.txt файлы.

Входные параметры

свернуть все

Путь к основному файлу раньше создавал приложение в виде вектора символов строки или строкового скаляра. Файлом должна быть функция MATLAB, класс или приложение одного из следующих типов: .mP, .mlx, .mlapp, или допустимый файл MEX.

Пример: 'mymagic.m'

Типы данных: char | string

Опции сборки автономного приложения в виде compiler.build.StandaloneApplicationOptions объект.

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: 'EmbedArchive','on'

Дополнительные файлы, чтобы включать в автономное приложение в виде вектора символов, строкового скаляра, массива строк или массива ячеек из символьных векторов. Пути к файлам могут быть относительно текущей рабочей директории или абсолюта.

Пример: 'AdditionalFiles',["myvars.mat","myfunc.m"]

Типы данных: char | string | cell

Отметьте, чтобы автоматически включать файлы данных в виде 'on' или 'off', или как числовой или логический 1 TRUE) или 0 ложь). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState.

  • Если вы устанавливаете это свойство на 'on', затем файлы данных, которые вы предоставляете как входные параметры определенным функциям (такой как load и fopen) автоматически включены в автономное приложение.

  • Если вы устанавливаете это свойство на 'off', затем необходимо добавить файлы данных в приложение с помощью AdditionalFiles свойство.

Пример: 'AutoDetectDataFiles','Off'

Типы данных: логический

Путь к справочному файлу, содержащему текст справки для конечного пользователя приложения в виде вектора символов или строкового скаляра. Путь может быть относительно текущей рабочей директории или абсолюта.

Пример: 'CustomHelpTextFile','D:\Documents\MATLAB\work\help.txt'

Типы данных: char | string

Отметьте, чтобы встроить автономный архив в виде 'on' или 'off', или как числовой или логический 1 TRUE) или 0 ложь). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState.

  • Если вы устанавливаете это свойство на 'on', затем функция встраивает архив в независимый исполняемый файл.

  • Если вы устанавливаете это свойство на 'off', затем функция генерирует автономный архив как отдельный файл.

Пример: 'EmbedArchive','Off'

Типы данных: логический

Путь к значку отображает в виде вектора символов или строкового скаляра. Изображение используется в качестве значка для независимого исполняемого файла. Путь может быть относительно текущей рабочей директории или абсолюта. Принятыми типами изображения является .ico, .jpg, .jpeg, .pngBMP , и .gif.

Путь по умолчанию:

'matlabroot\toolbox\compiler\resources\default_icon_48.png'

Пример: 'ExecutableIcon','D:\Documents\MATLAB\work\images\myIcon.png'

Типы данных: char | string

Имя сгенерированного приложения в виде вектора символов или строкового скаляра. Значением по умолчанию является имя файла AppFile. Целевые выходные имена должны начаться с буквы или символа подчеркивания и содержать только алфавитно-цифровые символы или символы нижнего подчеркивания.

Пример: 'ExecutableName','MagicSquare'

Типы данных: char | string

Путь к экрану-заставке отображает в виде вектора символов или строкового скаляра. Путь может быть относительно текущей рабочей директории или абсолюта. Принятыми типами изображения является .jpg, .jpeg, .pngBMP , и .gif. Изображение изменено к 400 пикселям на 400 пикселей.

Путь по умолчанию:

'matlabroot\toolbox\toolbox\compiler\resources\default_splash.png'

Примечание

Это используется только в Приложениях Windows, созданных с помощью compiler.build.standaloneWindowsApplication.

Пример: 'ExecutableSplashScreen','D:\Documents\MATLAB\work\images\mySplash.png'

Типы данных: char | string

Выполняемая версия в виде вектора символов или строкового скаляра.

Примечание

Это только используется на операционных системах Windows.

Пример: 'ExecutableVersion','4.0'

Типы данных: char | string

Путь к выходной директории, где файлы типа "build" сохранены в виде вектора символов или строкового скаляра. Путь может быть относительно текущей рабочей директории или абсолюта.

Имя по умолчанию папки сборки является исполняемым именем, добавленным с standaloneApplication.

Пример: 'OutputDir','D:\Documents\MATLAB\work\MagicSquarestandaloneApplication'

Типы данных: char | string

Отметьте, чтобы интерпретировать входные параметры командной строки как числовые значения в виде 'on' или 'off', или как числовой или логический 1 TRUE) или 0 ложь). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState.

  • Если вы устанавливаете это свойство на 'on', затем входные параметры командной строки обработаны, когда числовой MATLAB удваивается.

  • Если вы устанавливаете это свойство на 'off', затем входные параметры командной строки обработаны как векторы символов MATLAB.

Пример: 'TreatInputsAsNumeric','On'

Типы данных: логический

Отметьте, чтобы управлять многословием сборки в виде 'on' или 'off', или как числовой или логический 1 TRUE) или 0 ложь). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом можно использовать значение этого свойства как логическое значение. Значение хранится как логическое значение включения - выключения типа matlab.lang.OnOffSwitchState.

  • Если вы устанавливаете это свойство на 'on', затем окно команды MATLAB отображает информацию о прогрессе, указывающую на выход компилятора во время процесса сборки.

  • Если вы устанавливаете это свойство на 'off', затем командное окно не отображает информацию о прогрессе.

Пример: 'Verbose','On'

Типы данных: логический

Выходные аргументы

свернуть все

Создайте результаты, возвращенные как compiler.build.Results объект. Results объект содержит:

  • Создайте тип, который является 'standaloneApplication'

  • Пути к скомпилированным файлам

  • Создайте опции в виде StandaloneApplicationOptions объект

Советы

  • Чтобы создать автономное приложение от системной командной строки с помощью этой функции, используйте matlab функция с -batch опция. Например:

    matlab -batch compiler.build.standaloneApplication('mymagic.m')

Введенный в R2020b