Matlab 版 (精华区)

发信人: zjliu (Robusting), 信区: Matlab
标  题: 数学工具FAQ[smth]--第五节:Matlab接口-mcc
发信站: 哈工大紫丁香 (Tue Dec 17 15:07:01 2002) , 转信

 

===================================
3).mcc,mex,mbuild都是作什么用的?
:#FangQ(Qianqian.Fang@dartmouth.edu), 2002/6/22.BigGreen/MathTools#


        这个问题我一直都不是很清楚,看过compiler的PDF帮助之后,知道个
        大概,也不知道说得对不对:

     mcc(生成c/cpp文件)-----m--mex------ mex/dll
                        |---x--mbuild-----C/C++ compiler----独立执行的程序

        mex文件是一种编译后的动态连接文件,需要在matlab中执行,优点
        是执行速度比m文件快,而且如果你不想提供m文件源码,可以使用
        编译后的mex/dll文件。

        mbuild通过调用外部的c/c++编译器,把mcc翻译成的c/c++源码
        与matlab的c/c++数学库、图形库链接,得到独立执行的可执行程序。


===================================
4).用mcc生成的独立执行exe文件怎么发布?
:#FangQ(Qianqian.Fang@dartmouth.edu), 2002/6/22.BigGreen/MathTools#


        使用matlab自己提供的mglinstaller,路径在
        \extern\lib\win32\mglinstaller.exe
        参考C++ Math Lib,C++ Graphic Lib,Compiler的PDF帮助中都有关于打包
        和安装的详细介绍。


===================================
5).如何在VC中调用Matlab engine?
:#FangQ(Qianqian.Fang@dartmouth.edu), 2002/6/22.BigGreen/MathTools#


        matlab提供了ActiveX接口,你可以功过调用接口的底层函数来实现在
        你的C++/VB/Delphi程序中启动、执行matlab并交换数据,但matlab提
        供了一个对这些底层ActiveX接口函数的封装,叫作maltab engine,在
        C语言中调用engine的例子参见:

        http://www.mathworks.com/access/helpdesk/help/techdoc/
          matlab_external/ch06eng4.shtml#25603
        或者
        http://www.matlab-world.com/matlab_and_c.htm#VC_ml
        http://bbs.dartmouth.edu/cgi-bin/bbscon?
          board=MathTools&file=M.1022120287.A&num=23

        可以使用engEvalString直接在matlab中执行语句,也可以
        用mxCreateDoubleMatrix, mxDestroyArray,engPutArray,engGetArray等函数

        创建矩阵和数据交换。
        具体参见:
        http://www.mathworks.com/access/helpdesk/help/techdoc/
          matlab_external/matlab_external.shtml



===================================
6).如何在Matlab调用外部的c/c++/fortran函数?
:#FangQ(Qianqian.Fang@dartmouth.edu), 2002/6/22.BigGreen/MathTools#


        在用matlab的mex把外部c/for程序编译成mex/dll之前,你需要在你的外
        部函数的源码中添加一个mexFunction(),具体书写格式和例子参见
    http://www.mathworks.com/access/helpdesk/help/pdf_doc/matlab/apiext.pdf
 




--

※ 来源:.哈工大紫丁香 http://bbs.hit.edu.cn [FROM: 202.118.229.86]
[百宝箱] [返回首页] [上级目录] [根目录] [返回顶部] [刷新] [返回]
Powered by KBS BBS 2.0 (http://dev.kcn.cn)
页面执行时间:3.499毫秒