Analyse du code MATLAB
Identifier et résoudre les problèmes du code MATLAB® qui empêchent la génération de code C/C++
Pour que la génération de code C/C++ à partir de code MATLAB réussisse, vous devez respecter certaines règles et limites. Par exemple, votre code MATLAB doit uniquement utiliser des fonctions MATLAB et de toolbox qui sont supportées pour la génération de code. Pour identifier et résoudre les problèmes dans votre code MATLAB avant de générer du code C/C++, vous pouvez utiliser Code Analyzer et l’outil de vérification de la compatibilité pour la génération de code. Pour vérifier que votre code MATLAB produit du code généré qui fonctionne comme prévu, générez et exécutez une fonction MEX, qui est exécutable et testable dans l’environnement MATLAB.
Fonctions
coder.runTest | Run test replacing calls to MATLAB functions with calls to MEX functions |
coder.screener | Determine if function is suitable for code generation |
getLineColumn | Find locations of beginning and end of MATLAB code involved in code generation |
textReport | Export code generation readiness report to base workspace as a character vector (depuis R2022a) |
Propriétés
coder.CallSite Properties | Information about a function call site in your MATLAB code (depuis R2022a) |
coder.CodeFile Properties | Description of file containing text that is involved in code generation |
coder.File Properties | Description of file without text that is involved in code generation |
coder.Message Properties | Description of message produced during code generation readiness analysis or during code generation |
coder.ScreenerInfo Properties | Code generation readiness information (depuis R2022a) |
Rubriques
Préparer la génération de code
- Identify Entry-Point Functions and Check MATLAB Code
Identify entry-point functions and check MATLAB code for errors before code generation. - Code Generation Readiness Tool
The code generation readiness tool screens MATLAB code for features and functions that code generation does not support.
Débuggage
- Check for Issues in MATLAB Code Using MEX Functions
Use MEX functions to verify that the generated code provides the same functionality as the original MATLAB code. - Debugging Strategies
Choose a strategy for detecting and correcting code that is not suitable for code generation. - Débugger le code MEX généré
Débugger le code MEX généré à partir de votre code MATLAB. - Debug Generated C/C++ Code
Debug standalone C/C++ code generated from your MATLAB code. - Profile MEX Functions by Using MATLAB Profiler
See execution times and code coverage for generated MEX functions in MATLAB Profiler.
Résolution des problèmes
- Résoudre l’erreur : fonction non supportée pour la génération de code
Résoudre l’échec de la génération de code dû à des fonctions MATLAB non supportées. - Résoudre le problème : les variables doivent être entièrement définies avant utilisation
Résoudre les erreurs de génération de code lorsque les variables, y compris les champs de structure et les propriétés de classe, ne sont pas définies avant utilisation. - Resolve Issue: Cell Array Elements Must Be Fully Defined Before Use
Troubleshoot code generation errors when cell array elements are not defined before use.