How do I troubleshoot installation and licensing issues with Simulink Coder and Embedded Coder?

119 views (last 30 days)
I would like to generate C/C++ code from a Simulink model. However, I encounter any of the following issues: 
1. In the Configuration Parameters dialog box, the Code Generation tab is missing. 
2. Using R2019b or newer, in Simulink Toolstrip, I am unable to find the Simulink Coder app or Embedded Coder app.
3. Using R2019a or older, the Simulink menu Code > C/C++  Code > Code Generation Options... is unavailable or produces an error: 
Page "Code Generation" is not a valid page.
4. When I try to build my model, I errors such as:
This coder feature requires a "Embedded Coder" license
Unable to check out the Simulink Coder license which is required to generate code

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 11 Oct 2021
Edited: MathWorks Support Team on 11 Oct 2021
C/C++ code generation features for Simulink models are only available if you have the following products installed and licensed for:
  • MATLAB Coder
  • Simulink Coder
  • Embedded Coder (optional)
Please try out the following troubleshooting steps:

1. Check Licensing: 

Check out the licenses by running the following commands in MATLAB:
>> [status,errmsg] = license('checkout','matlab_coder') % MATLAB Coder (required)
>> [status,errmsg] = license('checkout','real-time_workshop') % Simulink Coder (required)
>> [status,errmsg] = license('checkout','RTW_Embedded_Coder') % Embedded Coder (optional)
Each command should return 'status = 1' and "errmsg = 0×0 empty char array" if the license checkout is successful.
Note that Embedded Coder depends on Simulink Coder. This means that Embedded Coder only works if Simulink Coder is also installed and licensed for. Simulink Coder depends on MATLAB Coder in the same way.
If a license checkout fails, or the products are not listed as in use after checkout, contact your MATLAB License Administrator or MathWorks Installation Technical Support

2. Check Installation: 

Execute the following command to get the full list of installed products and associated licenses per product:
>> ver -support
Check that MATLAB Coder and Simulink Coder are listed (additionally Embedded Coder if applicable).
If a product is missing from the above list, then add MATLAB Coder and Simulink Coder (and Embedded Coder if applicable) toolboxes to your existing installation as shown in the following link:

3. Try restarting: 

Restarting MATLAB and/or your PC may resolve the issue, especially if a MathWorks-related product was recently installed or updated.

4. Check if the Code Generation option is present for a shipped model:

Open the following model:
>> vdp
and check for the Code Generation option in Model Configuration Parameters (CTRL+E).
If the code generation options are available for the shipped model:
     a. Check if the model without the options has any issues in the Upgrade Advisor.
     b. Try to re-create the model in a fresh file by copying and pasting all blocks.
If the code generation options are available for the shipped model and the issue persists for your model after the above checks, contact MathWorks Technical Support

5. Check MATLAB path and cache: 

>> restoredefaultpath
>> rehash toolboxcache
>> sl_refresh_customizations
If the issue is resolved by the above steps, then you may optionally take an additional step to ensure it does not reappear: 
>> savepath
Note: The 'restoredefaultpath' command to restore the default path will remove any custom paths you may have created for the remainder of the current MATLAB session. (This may break the installation of  e.g. third-party toolboxes ) The 'savepath' command above to save the path will make this change persist to new sessions. If you would like help backing up custom additions to your path please refer to the following link:
If the issue persists after going through all the above steps, contact MathWorks Technical Support. When contacting MathWorks Technical Support, please include the outcome of the above checks and your license information. 

More Answers (0)

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by