question for using MATLAB Compiler (mc) for Undefined function

1 view (last 30 days)
I created a .m file that is used to generate subsystem for my simulink model. I want to use it in cmd, so that i compiled it by using
mcc -m myprogram.m
it generate a myprogram.exe file I run this file but it returns error
??? Undefined function or method 'open_system' for input arguments of type 'char'.
my program.m
function convert2subsys(sys)
open_system(sys);
blocks = find_system(sys, 'SearchDepth', 1);
bh = [];
% for i = 2:length(blocks)
bh = [bh get_param(blocks{2}, 'handle')];
% end
Simulink.BlockDiagram.createSubSystem(bh);
end
Please help. I am using matlab 2010(a); btw, should i use the matlab coder rather then matlab compiler?

Answers (1)

Friedrich
Friedrich on 12 Jul 2011
Hi,
the Simulink Products are not made for compiling:
Maybe consider calling MATLAB with the -r option in order to run you program from the cmd
  5 Comments
Kaustubha Govind
Kaustubha Govind on 12 Jul 2011
You can use close_system with the save flag parameter:
close_system('mymodel', 0); % close without saving
(or)
close_system('mymodel', 1); % close after saving
This will prevent the save dialog from popping up.
yizhan
yizhan on 13 Jul 2011
Thank you guys, it works now. The simulink process is been done invisibly.
There is only one window opening... which is the "matlab command window" is there a way to close it? I mean in batch file.
I have tried taskkill, but is will prevent the matlab file running.

Sign in to comment.

Categories

Find more on Programmatic Model Editing 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!