Why does Embedded Coder throw the error "A data dictionary hierarchy can only contain one coder dictionary" in MATLAB R2021a?

11 ビュー (過去 30 日間)

When I generate code for a model with more than one Embedded Coder Dictionary (ECD) in my SLDD hierarchy in MATLAB R2021a, I receive the error message below. Why is this?

Dictionaries are in the same data dictionary hierarchy. A data dictionary hierarchy can only contain one coder dictionary.

採用された回答

MathWorks Support Team
MathWorks Support Team 2025 年 7 月 10 日
This is expected behavior. Simulink supports only one ECD in an SLDD hierarchy to simplify data management and avoid ambiguity. To ensure that all models using different SLDD dictionaries in the hierarchy can access the ECD, it is best to keep the SLDD containing the ECD as a leaf dictionary so that it can be referenced by others. 
To resolve the error, please use the "removeDataSource" function to remove one of the ECD's listed in the error message. For more details, please refer to the "removeDataSource" function documentation.

その他の回答 (0 件)

製品


リリース

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by