Unable to find 'solver_zc.h' header file in generated code from Embedded Coder
67 views (last 30 days)
Show older comments
MathWorks Support Team
on 13 Jan 2017
Edited: MathWorks Support Team
on 10 Jul 2025
When I add the "external reset" signal to my "PID Controller" block, the resulting model can no longer be compiled in my Embedded Coder target. I get the error message from the compiler: "could not open source file 'solver_zc.h'".
Where do I get this file? Why isn't Embedded Coder adding the file it needs to the "ert_rtw" directory?
Accepted Answer
MathWorks Support Team
on 9 Jul 2025
Edited: MathWorks Support Team
on 10 Jul 2025
Embedded Coder does not place the 'solver_zc.h' file in the build directory. This is the case for several such header files, and is expected behavior. To access the 'solver_zc.h' file, please navigate to the path - 'C:\Program Files\MATLAB\<release>\simulink\include', where "<release>" might instead be "R2016a", as an example.
That being said, to be able to consolidate all the required build files in one folder, it is recommended to use the "packNGo" feature. The "packNGo" function can be used in the following manner, where "myModel.slx" is a Simulink model and "myModel_ert_rtw" is its build folder generated by Embedded Coder:
>> cd myModel_ert_rtw
>> load buildInfo.mat
>> packNGo(buildInfo, packType='hierarchical')
By using "packNGo" in the above manner, a majority of missing dependency issues should be resolved.
0 Comments
More Answers (0)
See Also
Categories
Find more on Deployment, Integration, and Supported Hardware in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!