Convert MATLAB Coder Project to MATLAB Script - MATLAB & Simulink (original) (raw)

After you define input types, you can convert a MATLAB® Coder™ project to the equivalent script of MATLAB commands. The script reproduces the project in a configuration object and runs the codegen command. You can:

You can convert a project using the MATLAB Coder app or the command-line interface.

Project to script conversion does not support entry-point function inputs that are value classes.

Project to script conversion is not supported in MATLAB Online™.

Convert a Project Using the MATLAB Coder App

  1. On the app toolbar, click , and then select .
  2. Specify the script name and click Save.

Convert a Project Using the Command-Line Interface

To convert a project to a script using the command-line interface, use the-tocode option of the coder command. The project file must be on the search path.

For example, to convert the project, myproject.prj to the script named myscript.m use this command:

coder -tocode myproject -script myscript.m

The coder command overwrites a file that has the same name as the script. If you omit the -script option, thecoder command writes the script to the Command Window.

For more information about the -tocode option, see coder.

Run the Script

  1. Make sure that the entry-point functions that are arguments tocodegen in the script are on the search path.
  2. Run the script. For example:

The following variables appear in the base workspace.

Variable For
cfg Configuration object
ARGS Types of input arguments, if the project has entry-point function inputs
ARG Types of cell array elements, if the project has cell array inputs. A script can reuse ARG for different cell array elements
GLOBALS Types and initial values of global variables, if the project has global variables

cfg, ARGS, ARG, and GLOBALS appear in the workspace only after you run the script. The type of configuration object depends on the project file settings.

Project File Settings in MATLAB Coder App Code Configuration Object
Build type is MEX. coder.MexCodeConfig
Build type is static library, dynamically linked library, or executable.One of the following conditions is true: You do not have an Embedded Coder® license.You have an Embedded Coder license. On the tab, is set toNo. coder.CodeConfig
Build type is static library, dynamically linked library, or executable.You have an Embedded Coder license. On the tab, is set toYes. coder.EmbeddedCodeConfig

You can import the settings from the configuration object cfg into a project. See Share Build Configuration Settings.

For a project that includes fixed-point conversion, project to script conversion generates a pair of scripts for fixed-point conversion and fixed-point code generation. For an example, see Convert Fixed-Point Conversion Project to MATLAB Scripts.

Special Cases That Generate Additional MAT-File

Suppose that you convert a project file myproject.prj to a scriptmyscript.m. In certain situations the code generator can produce an additional MAT-file in the current working folder. In such cases, the generated script loads the MAT-file and uses the stored values to define constant inputs or constant global variables in the generated code.

This behavior happens if all of these conditions are true:

Even if all of the preceding conditions are true, you can avoid the creation of the auxiliary MAT-file. Before generating the script, modify the project file myproject.prj:

See Also

codegen | coder