Can I use MATLAB Coder on .mlapp files?
2 次查看(过去 30 天)
显示 更早的评论
I have used the MATLAB App Designer to put together a GUI that works. I have seen that you can use MATLAB Compiler to create an executable from the App, but I don't have that toolbox so that's not a viable option for me. I am wondering whether I can generate C++ code for this App using MATLAB Coder. I've never used the toolbox before but it appears that MATLAB Coder can generate C++ code for MATLAB classes and functions and it's my understanding that that's what's under the hood for a .mlapp file, but I'm not seeing a workflow that gets me from a working .mlapp file to generated C++ code. Is there one?
1 个评论
回答(1 个)
Kanishk
2025-7-11
Hello Michael,
I understand you are want to generate C++ code from a MATLAB App Designer application using MATLAB Coder.
The MATLAB Coder does not support code generation for graphical user interfaces (GUIs) created with App Designer or any other GUI development tools in MATLAB. This includes ".mlapp" files, which encapsulate UI components such as buttons, axes, and callbacks using objects like uifigure, and uibutton. These graphical and event-driven components are not supported by MATLAB Coder’s code generation capabilities.
However, if your app includes underlying computational logic (e.g., algorithms, processing routines) that is independent of the UI, there is a viable workflow:
- Refactor the core algorithmic logic from your app into one or more standalone MATLAB functions that do not rely on any GUI elements.
- Use MATLAB Coder to generate C or C++ code from those standalone functions. You can do this either via the MATLAB Coder app or programmatically using the codegen command.
- If needed, the generated C++ code can then be integrated into a C++ application or a custom GUI built in another environment.
You can read more about generating computational logic for GUI based application from this MATLAB answer.
Cheers!
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!