Import Function is not supported
Afficher commentaires plus anciens
Hi,
I am converting my MATLAB code into C code using MATLAB Coder. However, this error popped out while I'm trying to convert it.

It said that the import statements below are not supported.

How am I supposed to modify the code? I need it for my project to run smoothly.
Thank you.
Réponses (1)
David Fink
le 11 Mai 2020
import is used to bring names into scope.
Instead of:
import x.y.*
functionInXY();
use
x.y.functionInXY();
Please contact MathWorks Technical Support to formally express your interest in supporting import in a future release.
6 commentaires
David Fink
le 11 Mai 2020
Based on the import statements in the question, those appear to be packages, so calling them as functions will not work.
In fact, the .* syntax is not recommended in MATLAB. See the import page for details:
To remove the import-s, you will need to identify the functions and classes used in the body of decode that exist in those packages, and prepend the appropriate package name to each.
To draw a parallel to my example above, com.google.zxing.qrcode = x.y, but there may be various calls corresponding to functionInXY.
For example,
import com.google.zxing.qrcode
reader = QRCodeReader;
becomes
reader = com.google.zxing.qrcode.QRCodeReader;
WanYu
le 11 Mai 2020
David Fink
le 11 Mai 2020
Doing some searching, those packages look like Java.
MATLAB Coder does not support calling Java.
MATLAB Compiler (not my area of expertise) might support calling Java from a MATLAB Compiler executable:
WanYu
le 12 Mai 2020
David Fink
le 12 Mai 2020
If generating a MEX file, MATLAB Coder can call into MATLAB (which can call Java) via coder.extrinsic.
If generating standalone C code, MATLAB Coder cannot call into MATLAB or Java.
Catégories
En savoir plus sur Introduction to Installation and Licensing dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
