Поддерживаемые платформы: Windows ®, Linux ®, Mac
В этом примере показано, как создать пакет Python ®, использующий функцию MATLAB ®. Созданный пакет можно интегрировать в приложение Python. В этом примере также показано, как вызвать пакет Python из приложения Python. Для целевой системы не требуется лицензионная копия MATLAB.
В MATLAB проверьте код MATLAB, который требуется упаковать. В этом примере следует записать функцию makesqr.m следующим образом:
function y = makesqr(x)
y = magic(x);
В командной строке MATLAB введите makesqr(5).
Выходные данные:
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9На вкладке Приложения MATLAB (MATLAB Apps) в правой части раздела Приложения (Apps) щелкните стрелку. В разделе Развертывание приложения выберите Компилятор библиотеки.
Также можно открыть приложение компилятора библиотеки из командной строки MATLAB, введя:
libraryCompiler

В разделе «Тип» панели инструментов выберите «Python Package».
В окне проекта приложения компилятора библиотеки укажите файлы приложения MATLAB, которое необходимо развернуть.
В разделе «Экспортированные функции» на панели инструментов нажмите кнопку.![]()
В окне Добавить файлы перейдите к папке-примеру и выберите функцию, которую требуется упаковать. Щелкните Открыть (Open).
Функция добавляется в список экспортированных файлов функций. Повторите этот шаг, чтобы упаковать несколько файлов в одном приложении.
В этом примере выберите makesqr.m файл, который вы написали ранее.
В разделе Параметры упаковки (Packaging Options) панели инструментов выберите, следует ли включить программу установки MATLAB Runtime installer в созданное приложение, выбрав один из вариантов:
Среда выполнения, загруженная из Интернета - создание программы установки, которая загружает среду выполнения MATLAB и устанавливает ее вместе с развернутым приложением MATLAB. Можно указать имя файла установщика.
Среда выполнения, включенная в пакет - создание приложения, включающего установщик среды выполнения MATLAB. Можно указать имя файла установщика.
Примечание
При первом выборе этого параметра выводится запрос на загрузку установщика среды выполнения MATLAB.
Поле Имя библиотеки (Library Name) автоматически заполняется makesqr в качестве имени пакета. Переименовать как MagicSquarePkg. Дополнительные сведения о требованиях к именованию для пакета Python см. в разделе Импорт скомпилированных пакетов Python.
Добавьте файлы MATLAB для создания примеров файлов драйверов Python. Несмотря на то, что файлы драйверов Python не требуются для создания пакетов, они используются для демонстрации процесса установки и запуска приложения Python, созданного MATLAB.
В разделе «Образцы» выберите «Создать новый образец» и нажмите makesqr.m. Откроется файл MATLAB для редактирования.
% Sample script to demonstrate execution of function y = makesqr(x) x = 0; % Initialize x here y = makesqr(x);
x = 0 кому x = 3сохраните файл и вернитесь в приложение компилятора библиотеки. Дополнительные сведения и ограничения см. в разделе Создание файла драйвера образца.Можно настроить программу установки, настроить приложение и добавить дополнительные сведения о приложении следующим образом:
Сведения о библиотеке - сведения о развернутом приложении. Можно также настроить внешний вид приложения, изменив значок приложения и заставку. Созданная программа установки использует эту информацию для заполнения метаданных установленного приложения. См. раздел Настройка установщика.
Дополнительные параметры установщика - путь установки по умолчанию для созданного установщика и выбора пользовательского логотипа. См. раздел Изменение пути установки.
Файлы, необходимые для запуска библиотеки - дополнительные файлы, необходимые для запуска созданного приложения. Эти файлы включены в созданную программу установки приложения. См. раздел Управление необходимыми файлами в проекте компилятора.
Файлы, установленные для конечного пользователя - файлы, установленные в приложении.
См. раздел Указание файлов для установки с приложением

Чтобы создать упакованное приложение, щелкните Пакет.
В диалоговом окне «Сохранение проекта» укажите местоположение для сохранения проекта.
В диалоговом окне «Пакет» убедитесь, что выбрана опция «Открыть папку вывода по завершении процесса».
После завершения процесса упаковки проверьте сгенерированные выходные данные.
В целевой папке создаются три папки: for_redistribution, for_redistribution_files_only, и for_testing.
Дополнительные сведения о файлах, созданных в этих папках, см. в разделе Файлы, созданные после упаковки функций MATLAB.
PackagingLog.txt - Файл журнала, созданный MATLAB Compiler™.
compiler.build.pythonPackageПримечание
Если пакет Python уже создан с помощью приложения компилятора библиотеки, можно пропустить этот раздел. Однако если вы хотите знать, как создать пакет Python из окна команд MATLAB с использованием программного подхода, следуйте этим инструкциям.
Сохранить следующий код в примере файла с именем makesqrSample1.m:
x = 3; a = makesqr(x);
Создайте пакет Python с помощью compiler.build.pythonPackage функции и makesqr.m файл, который вы написали ранее. Используйте аргументы «имя-значение», чтобы добавить образец файла и указать имя пакета.
buildResults = compiler.build.pythonPackage('makesqr.m',... 'PackageName','MagicSquarePkg',... 'SampleGenerationFiles','makesqrSample1.m');
compiler.build.Results объект buildResults содержит информацию о типе сборки, созданных файлах и параметрах сборки.
Этот синтаксис создает следующие файлы в папке с именем MagicSquarePkgpythonPackage в текущей рабочей папке:
samples\makesqrSample1.py - Файл примера драйвера Python.
GettingStarted.html - HTML-файл, содержащий информацию об интеграции пакета.
mccExcludedFiles.log - файл журнала, содержащий список всех функций панели инструментов, которые не были включены в приложение. Сведения о неподдерживаемых функциях см. в разделе Ограничения компилятора MATLAB.
readme.txt - текстовый файл, содержащий информацию о упаковке и интерфейсе.
requiredMCRProducts.txt - текстовый файл, содержащий идентификаторы продуктов, необходимых для выполнения приложения в среде выполнения MATLAB.
setup.py - файл Python, устанавливающий пакет.
unresolvedSymbols.txt - текстовый файл, содержащий информацию о неразрешенных символах.
Примечание
Созданный пакет не включает среду выполнения MATLAB или программу установки.
Вы можете указать дополнительные параметры в compiler.build используя один или несколько из следующих аргументов «имя-значение»:
'AdditionalFiles' - путь к дополнительным файлам для включения в пакет.
'AutoDetectDataFiles' - Флажок для автоматического включения файлов данных.
'OutputDir' - путь к выходному каталогу, содержащему созданные файлы.
'PackageName'- имя сформированного пакета.
'SampleGenerationFiles'- образцы файлов MATLAB, используемые для создания образцов файлов пакетов Python. Дополнительные сведения см. в разделе Пример создания файла драйвера.
'Verbose'- Флаг для отображения информации о ходе выполнения, указывающей на вывод компилятора в процессе построения.
После создания пакетов Python их можно вызвать из приложения Python. Созданное приложение Python использует образец кода драйвера Python, созданного во время упаковки. Код драйвера Python вызывает пакеты Python и основан на образце файла MATLAB, выбранного на предыдущих шагах установки.
Эти шаги также объясняются в GettingStarted.html файл. Перед запуском убедитесь, что установлена программа установки и настройки MATLAB Runtime и установлен Python.
Копирование и вставка созданного файла кода драйвера Python makesqrSample1.py от samples в папку, содержащую setup.py файл.
Используйте системную командную строку для перехода к папке, содержащей созданный файл кода драйвера Python и setup.py.
Установить приложение с помощью python в командной строке системы.
python setup.py install
В командной строке системы запустите приложение.
python makesqrSample1.py
Примечание
В macOS необходимо использовать mwpython сценарий. mwpython скрипт расположен в папка. matlabroot/binmatlabroot - местоположение установки MATLAB.
Например, mwpython makesqrSample1.py
compiler.build.pythonPackage | deploytool | libraryCompiler | mcc | mwpython