Why does Embedded Coder throw the error "A data dictionary hierarchy can only contain one coder dictionary" in MATLAB R2021a?
11 次查看(过去 30 天)
显示 更早的评论
MathWorks Support Team
2025-7-10
回答: MathWorks Support Team
2025-7-25
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
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 个评论
更多回答(0 个)
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!