slbuild

Build standalone executable or model reference target for model

Description

example

slbuild(model) builds a standalone Simulink® Coder™ binary executable file from model, using the current model configuration settings. If the model has not been loaded, slbuild loads it before initiating the build process.

Do not use rtwbuild, rtwrebuild, or slbuild commands with parallel language features (Parallel Computing Toolbox), for example, within a parfor or spmd loop. For information about parallel builds of referenced models, see Reduce Build Time for Referenced Models by Using Parallel Builds (Simulink Coder).

You cannot use slbuild to build subsystems.

example

slbuild(model,buildSpec) builds a standalone Simulink Coder binary executable file from model according to the specified code generation action.

example

slbuild(model,buildSpec,Name,Value) builds a standalone Simulink Coder binary executable file from model as specified by one or more Name,Value pairs.

Examples

collapse all

Generate C code for model rtwdemo_rtwintro.

slbuild('rtwdemo_rtwintro')
% Same operation as ...
% slbuild('rtwdemo_rtwintro','StandaloneCoderTarget') 

For the generic real-time (GRT) target, the coder generates these code files and places them in folders rtwdemo_rtwintro_grt_rtw and slprj/grt/_sharedutils.

Model FilesShared FilesInterface FilesOther Files

rtwdemo_rtwintro.c

rtwdemo_rtwintro.h

rtwdemo_rtwintro_private.h

rtwdemo_rtwintrotypes.h

rtwtypes.h

multiword_types.h

builtin_typeid_types.h

rtmodel.h

none

If the following model configuration parameters settings apply, the coder generates additional results.

Parameter SettingResults
Code Generation > Generate code only pane is clearedExecutable image rtwdemo_rtwintro.exe
Code Generation > Report > Create code generation report is selectedReport appears, providing information and links to generated code files, subsystem and code interface reports, entry-point functions, inports, outports, interface parameters, and data stores

Clean the model build area enough to trigger regeneration of the top model code at the next build.

slbuild('rtwdemo_rtwintro','CleanTopModel')

Generate code and build an executable image for rtwdemo_mdlreftop, which refers to model rtwdemo_mdlrefbot, regardless of model checksums and parameter settings.

slbuild('rtwdemo_mdlreftop','StandaloneCoderTarget', ...
    'ForceTopModelBuild',true)

Input Arguments

collapse all

Model for which to build a standalone executable or model reference target, specified as a handle or a character vector representing the model name.

Example: gcs

buildSpec directs the code generator to perform the selected build action for the model and build process:

  • Honors the setting of the Rebuild parameter on the Model Referencing pane of the Configuration Parameters dialog box.

  • Requires a Simulink Coder license only if you build a model reference Simulink Coder target, not if you build a model reference simulation target only.

The buildSpec argument must be one of the following.

buildSpecBuild Action

'StandaloneCoderTarget'

Builds a standalone Simulink Coder binary executable file from model, using the current model configuration settings. If model has not been loaded, slbuild loads it before initiating the build process.

'ModelReferenceSimTarget'

Builds a model reference simulation target (does not require a Simulink Coder license).

'ModelReferenceCoderTarget'

Builds a model reference Simulink Coder target and the corresponding model reference simulation target.

'ModelReferenceCoderTargetOnly'

Builds only a model reference Simulink Coder target.

'CleanTopModel'

Cleans the model build area enough to trigger regeneration of the top model code at the next build.

Example: 'ModelReferenceSimTarget'

Name-Value Pair Arguments

Specify optional comma-separated pairs of Name,Value arguments. Name is the argument name and Value is the corresponding value. Name must appear inside quotes. You can specify several name and value pair arguments in any order as Name1,Value1,...,NameN,ValueN.

Example: 'UpdateThisModelReferenceTarget','Force'

The 'UpdateThisModelReferenceTarget' value specifies a conditional rebuild option for the model reference target build. This option applies only to model, not to any models referenced by model.

'UpdateThisModelReferenceTarget' ValueEquivalent Rebuild OptionRebuild Action

'Force'

Always

Unconditionally rebuilds the model.

'IfOutOfDateOrStructuralChange'

If any changes detected

Rebuilds the model if the build process detects any changes.

'IfOutOfDate'

If any changes in known dependencies detected

Rebuilds the model if the build process detects any changes in known dependencies of this model.

For more information on the different rebuild options, see Rebuild.

Example: 'UpdateThisModelReferenceTarget','Force'

Dependencies

To use this option, set buildSpec to 'ModelReferenceSimTarget', 'ModelReferenceCoderTarget', or 'ModelReferenceCoderTargetOnly'.

Setting the 'ForceTopModelBuild' value to true directs the code generator to generate code and build an executable image for the top model of the model hierarchy, regardless of model checksums and parameter settings.

Example: 'ForceTopModelBuild',true

Dependencies

To use this option, set buildSpec to 'StandaloneCoderTarget'.

To display build information in the Build Process window, specify as true. The default is false. For more information about using the status window, see View Build Process Status (Simulink Coder).

The Build Process Status window supports parallel builds of referenced model hierarchies. Do not use the Build Process Status window for sequential (nonparallel) builds.

Dependencies

To use this option, set buildSpec to 'StandaloneCoderTarget'.

Compatibility Considerations

expand all

Not recommended starting in R2019a

Introduced before R2006a