未解决问题如下:
1)目的:把m文件编译成cpp、hpp、exe文件,以便在C程序中调用
环境:VS2008+Matlab2009b
M文件代码:
function y=exmaple3(n)
y=0;
for i=1:n
y=y+i;
end
编译命令:mcc -m exmaple3
Error:
'cmd' 不是内部或外部命令,也不是可运行的程序
或批处理文件。
Error: An error occurred while shelling out to mbuild (error code = 1).
Unable to build executable (specify the -v option for more information).
??? Error using ==> mcc
Error executing mcc, return status = 1 (0x1).
状态:未解决
该项目中的其他待思考问题:
a)运行mex -setup和mbuild -setup命令时,怎么有些电脑上Matlab可以自动列出该电脑上的c编译器路径,如直接到D:\Program Files\MATLAB\R2009b而不是手动输入,是不是我哪里没有设置好?
b)本身Matlab的Lcc编译器,怎么样?是不是可以不用外编译器只用Lcc编译器?
c)运行comtool命令时,给出错误提示:??? Undefined function or variable 'comtool'.
d)如果用命令mcc -B sglcpp exmaple3编译,则成功,产生文件如下:
2)mcc -B sglcpp exmaple3
mcc -t -L Cpp -h exmaple3(-h什么用)
mcc -m exmaple3
3)mex -setup
mbuild -setup
mex与mbuild都干什么的?
是不是分别对应
mex hello.c
mcc -W cpplib:libMyAdd -T link:lib MyAdd
其他待参考文章:
http://www.ilovematlab.cn/viewthread.php?tid=21249
http://www.vckbase.com/document/viewdoc/?id=1489
http://www.ccproject.net.cn/ccprojbbs/LeadBBS/MINI/Default.asp?450-2984-0-0-0-0-0-a-.htm
http://zhidao.baidu.com/question/98371810
http://xlh1221it.blog.163.com/blog/static/12958722420099256442203/
http://www.matlabsky.com/forum.php?mod=viewthread&tid=543&archiver=1
http://blog.sina.com.cn/s/blog_5fe506110100dysk.html
http://topic.csdn.net/u/20090330/11/c4b0f185-e2ac-47a8-ae94-2c9c47bac03e.html
------
http://blog.donews.com/gentil/archive/2007/05/29/1170028.aspx
http://topic.csdn.net/u/20110503/09/f773c107-5723-4538-b7d9-230a3503713c.html
http://hi.baidu.com/superql/blog/item/7ec2a6a12e2b53854610646f.html
http://blog.sina.com.cn/s/blog_53c43ef90100q21r.html
http://www.ilovematlab.cn/viewthread.php?action=printable&tid=125742&sid=7kaW1t