MATLAB7.0使用详解-第17章MATLAB7.0编译器.ppt

上传人:s9****2 文档编号:571927271 上传时间:2024-08-12 格式:PPT 页数:15 大小:388KB
返回 下载 相关 举报
MATLAB7.0使用详解-第17章MATLAB7.0编译器.ppt_第1页
第1页 / 共15页
MATLAB7.0使用详解-第17章MATLAB7.0编译器.ppt_第2页
第2页 / 共15页
MATLAB7.0使用详解-第17章MATLAB7.0编译器.ppt_第3页
第3页 / 共15页
MATLAB7.0使用详解-第17章MATLAB7.0编译器.ppt_第4页
第4页 / 共15页
MATLAB7.0使用详解-第17章MATLAB7.0编译器.ppt_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《MATLAB7.0使用详解-第17章MATLAB7.0编译器.ppt》由会员分享,可在线阅读,更多相关《MATLAB7.0使用详解-第17章MATLAB7.0编译器.ppt(15页珍藏版)》请在金锄头文库上搜索。

1、第17章 MATLAB 7.0编译器在使用MATLAB进行科学计算、程序编辑、界面设计时,用户都希望系统的速度和效率可以“更上一层楼”,这也是对于所有科学工程领域软件的共性要求。针对用户的此种需求,MATLAB 7.0特别提供了编译器Compiler 4.0。使用编译器不但可以提高程序的运行效率,而且可以脱离MATLAB环境独立运行一些程序。本节主要介绍MATLAB编译器的使用方法,包括编译器的基本知识、MATLAB程序和外部程序的相互转换。17.1 编译器的功能与局限本节主要讲解MATLAB 7.0的编译器具有的功能和所存在的局限性。17.1.1 编译器的功能与局限本章引言中已经介绍了,MA

2、TLAB 7.0中的编译器为Compiler 4.0,其功能概括来说就是将M-文件作为其输入变量,进行编译重新分配后,产生可以独立运行的、与平台相关的应用程序或相对应的软件组件,编译器包括以下几种。独立运行的程序:在运行之中不需要MATLAB 7.0软件环境,也可以在没有安装MATLAB的机器上运行。C与C+共享库(在Windows操作系统中为动态连接库DLL):这些库可以在安装了MATLAB的机器上运行。Excel附件:需要MATLAB 7.0 Builder。COM附件:需要MATLAB 7.0 Builder。17.1.2 脚本文件向函数文件转换上一小节介绍了编译器的局限,其中一点就是不

3、能直接编译脚本文件,当用户需要对脚本文件进行编译的时候,一种便捷的方法就是先把脚本文件转换为函数文件,编译器可以编译函数文件。读者如果阅读了本书的第8章,应该熟知脚本文件与函数文件的转换是十分方便的,即在脚本文件的开头添加一行函数声明行。下面举例说明使用编译器编译脚本文件的过程。17.2 编译器的安装和设置本节主要讲解编译器的安装和设置。17.2.1 编译器的安装在安装MATLAB编译器之前,用户要确保安装以下任何一种与MALTAB 7.0适配的ANSI C/C+编译器。Lcc C:MATLAB 7.0自带的编译器,仅能够编译C代码,不能编译C+代码。Borland C+:可行版本为5.3、5

4、.4、5.5和5.6。Microsoft Visual C/C+(MSVC):可行版本为6.0、7.0和7.1。说明:即使用户不安装任何第3方编译器,也可以在完成MATLAB 7.0的安装后,编译C程序代码。在做好以上ANSI C/C+编译器的安装准备后,就可以进行MATLAB 7.0的编译器安装了。读者需要明确,编译器的安装是包含于MATLAB的安装过程中的(可参考本书第1章的有关内容),如果用户选择典型安装,并在产品安装界面中,选择安装MATLAB Compiler(MATLAB默认其被选中),则可以在MATLAB安装中同时完成编译器的安装。17.2.2 编译器的设置在完成编译器的安装后,

5、用户一般要对编译器进行设置,以保证其的正常工作。如果系统中安装了C和C+的编译器,则需要使用MATLAB中的mbuild函数,选择系统中与MATLAB编译器相关联的编译器,命令格式如下。mbuild setup读者需要注意,在函数mbuild和参数setup前的短横线“-”之间,需要有一个空格。说明:如果任意第3方编译器安装在MATLAB的默认路径下,则用户不需要调用mbuild函数进行上述的设置。17.2.3 为产生MEX文件进行编译器设置上一小节介绍的是为实现从M-文件到独立外部应用程序的转换,而对编译器进行的设置的方法和步骤。如果用户只需要M-文件转换为C程序代码,即只需要产生MEX文件

6、,则只要进行以下的设置即可。(1)在MATLAB命令窗口输入代码如下。 mex setup(2)启动MATLAB自定位机制,输入y,MEX将自动搜索外部编译器的类型、版本及所在路径,显示如下。Select a compiler: 1 Lcc C version 2.4 in E:MATLABsyslcc 0 None Compiler:(3)确定选择的编译器。输入1,选择唯一的编译器,系统进而显示如下信息,等待用户确定选择。(4)如果用户确定选择无误,则输入y确定选择。系统显示如下信息。17.2.4 验证编译器设置的正确性本小节是承接上一小节内容的,讲解验证编译器设置的正确性的方法和步骤。要验

7、证设置的正确性,必须要从两个方面分别进行操作,即一是验证外部C代码文件能否正确转换为M-文件;二是验证M-文件能否正确地转换为MEX文件。本节进行验证的例子都取自MATLAB自带原始文件,这样可以避免程序本身的错误混淆读者对编译器设置正确性的判断。首先,验证编译器能否将外部C代码文件正确地转换为M-文件。17.3 编译器的使用在完成编译器的安装后,本节将具体讲解编译器的使用方法,主要内容为MCR的安装、编译器的工作流程及编译命令mcc的使用方法。17.3.1 安装MCRMATLAB 7.0编译器采用的是MCR技术,即MATLAB Component Runtime,它是用来确保M-文件执行的一

8、组独立的共享库,且对MATLAB语言完全支持。用户需要安装MCR,才能使用MATLAB编译器生成组件。为了读者更好地理解MCR技术,本小节特别针对其安装和使用流程做详细的介绍。读者可以在Windows环境下安装MCR,步骤如下。17.3.2 编译流程MATLAB 7.0编译器采用了Component Technology File(CTF)的存档方式来组织培植文件包,所有的M-文件都运用高级加密标准(AES)进行了1024位密码的加密,并以CTF格式(.ctf)存储。读者可以在实际操作的过程中发现,任何一个由编译器产生的应用程序或者共享库均有一个与之对应的.ctf文件存档,其中当然也包括所有基

9、于MATLAB 7.0的M-文件和MEX文件。MATLAB编译器生成的独立文件或组件的流程无须用户控制,是完全自动的。用户只需要提供一系列M-文件程序作为构成应用程序。下面以对foo.m文件和bar.m文件的编译作为示例,向读者讲解MATLAB编译器的基本编译流程。17.3.3 mcc编译命令当用户需要调用编译器时,使用指令mcc,无论需要生成独立的外部可执行程序,或者创建一个C共享库及软件组件,只要源代码文件是M-文件,都可以使用编译指令mcc来实现。用户可以在MATLAB 7.0、DOS和UNIX环境中使用mcc指令。用户可以使用一种或者多种编译器参数给mcc指令,大部分参数是单个字母,以下代码即是对于文件“happy_compiler.*”(“*”代表外部文件类型,如“c”)进行编译的操作。 mcc -m happy_compiler有些参数由两个字母组成,如下代码。 mcc -m g happy_compiler17.3.4 编译M-文件17.3.5 编译包含绘图函数的M-文件上一小节讲解了编译简单M-文件的方法,本节在上一小节的基础上,结合MCR图形库的调用,介绍编译包含绘图函数M-文件的方法。仍然选择本书前面章节使用过的函数,以便读者比较程序运行的结果。读者可以参考【例7.10】中的程序代码。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号