Why do I get an "undeclared identifier" error when using MEX with the option -D in MATLAB 7.7(R2008b)?
1 view (last 30 days)
Show older comments
While using the following code :
var1 = var1_GUI; % value set from the GUI script
outputName = sprintf('file%d', var1);
mex -DVAR1=var1 -output outputName file.c
I get the following error messages:
Error ...file.c: <lineNumber> undeclared identifier `var1'
Accepted Answer
MathWorks Support Team
on 27 Jun 2009
The MEX function does not evaluate MATLAB variables from the workspace. In order to evaluate workspace variables, replace the following code:
mex -DVAR1=var1 file.c
with:
eval(['mex -DVAR1=' var1 ' file.c])'
This will make sure that the value of var1 is printed into a string and therefore evaluated.
0 Comments
More Answers (0)
See Also
Categories
Find more on Whos 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!