
1、安装编译器。可有多种选择,matlab自带了一个LCC,推荐使用VC++60,我基于VS 2003实现。
2、设置编译器。在matlab命令行输入mbuild –setup以及mex –setup,选择安装的c编译器。
3、调用编译器。此处使用MATLAB下的一个GUI平台deploytool下完全实现。在命令窗口输入deploytool即可看到。具体使用方法请Help。
当然,也可以输入mcc -m filaname, filaname为要转成exe的m文件;
注:在以前的版本中,用编译命令mcc -B sglcpp filaname;自2006的版本后,替换为mcc
-mfilaname;
4、安装<matlab
path>\toolbox\compiler\deploy\win32目录下的MCRInstaller。
一个源程序到一个可执行程序的过程:预编译、编译、汇编、链接。其中,编译是主要部分,其中又分为六个部分:词法分析、语法分析、语义分析、中间代码生成、目标代码生成和优化。
预编译:主要处理源代码文件中的以“#”开头的预编译指令。处理规则如下:
1、删除所有的#define,展开所有的宏定义。
2、处理所有的条件预编译指令,如“#if”、“#endif”、“#ifdef”、“#elif”和“#else”。
3、处理“#include”预编译指令,将文件内容替换到它的位置,这个过程是递归进行的,文件中包含其他文件。
4、删除所有的注释,“//”和“//”。
5、保留所有的#pragma 编译器指令,编译器需要用到他们,如:#pragma once 是为了防止有文件被重复引用。
6、添加行号和文件标识,便于编译时编译器产生调试用的行号信息,和编译时产生编译错误或警告是能够显示行号。
扩展资料:
编译过程中语法分析器只是完成了对表达式语法层面的分析,语义分析器则对表达式是否有意义进行判断,其分析的语义是静态语义——在编译期能分期的语义,相对应的动态语义是在运行期才能确定的语义。
其中,静态语义通常包括:声明和类型的匹配,类型的转换,那么语义分析就会对这些方面进行检查,例如将一个int型赋值给int型时,语义分析程序会发现这个类型不匹配,编译器就会报错。
问题一:易语言代码编辑好后,编译是变成程序来运行吗 菜单里面选择“编译”》“编译”或者是“独立编译”编译:要输出多个文件 其中的文件除有exe的可执行文件外还有相关的一些支持库 在吧软件给别人运行的时候里面的文件缺一不可 都要放到那个EXE文件的相同目录里面!独立编译:只输出一个EXE的可执行文件 就是相当于那些支持库文件被融入到exe文件中了 如果要给别人使用的时候就不那一个exe文件发别人就可以了。
问题二:怎么用易语言打开那些用易语言编译好的exe后缀的易语言程序? 靠,我看错题目了。。不能反编译的!新人总是异想天开,要是可以直接打开,别人的软件还卖上个几千块一个,你说要是可以直接改,别人还要买干什么,直接改,所以说不可能的。可以用OD工具进行反汇编,LZ的等级还没到,不可能实现,如果想学习,给你个传送门 52pojie。
问题三:易语言编译完成的文件怎么才能用易语言打开 易语言只是一个编程语言,不能反编译。您下载的软件是已经编译出来的了,如果想反编译,就很难,我也不会。。。
问题四:怎么打开用易语言编辑的软件(已经编译好的) 可以反编译,简单可以修改文本, 工具用C32ASM 可以看看反汇编教程
问题五:用易语言编译程序用哪种编译方式多好? 静态编译和普通编译一样
静态编译是封装了所有易语言的api,而普通编译把易语言api编程文件,再用易语言来调用而已
其实两者都是一样,个人推荐静态编译,这样有效减少文件数量
至于你说的独立编译和静态编译是同一种意思
问题六:请问有了易语言源码怎样编译成软件exe? bak是易语言备份文件,把bak后缀改成e就可以用易语言打开,
打开易语言时他会提示载入模块,根据 *** 作加载ec模块文件
生成win32程序,可以用易语言编译(如图下)
易语言下载:1809783171:443/461879
问题七:易语言 调试易程序一运行直接就完毕 这种情况很多人都遇到过,包括我归类以下几种可能
使用了ET助手里面的一键快捷编译
编译器配置出问题了
有进程拦截了link 因为link属于调试环境,可能是某进程防止被调试,hook了相关函数,导致link启动的时候直接被拦了
第三种的可能性是占90%以上某些游戏或者软件运行后,会启动某服务 或者驱动开机启动来防止自身主程序被调试
最主要的因素还是是因为LINK被拦截个人认为如果答错了飘过即可勿喷
问题八:易语言程序用易语言运行时没问题,但是编译出来后再运行程序出了点错怎么办 10分 易语言已经调试输出了错误信息
错误(10143): 静态编译暂不支持使用了NPK或OPK支持库的程序。
所以不可以使用“静态编译”
只能使用“编译”
问题九:易语言版本不支持编译程序及制作安装软件怎么办 因为你用的易语言是学习版的,要破解了才能编译
破解补丁放到易语言根目录下运行,以下是破解补丁的下载地址
panbaidu/s/1sjob7rB
问题十:易语言里如何运行编辑框内容? 要代码 运行 (编辑框1内容, 真, )
编译程序(Compiler,compiling program),也称为编译器,是指把用高级程序设计语言书写的源程序,翻译成等价的机器语言格式目标程序的翻译程序。编译程序属于采用生成性实现途径实现的翻译程序。
它以高级程序设计语言书写的源程序作为输入,而以汇编语言或机器语言表示的目标程序作为输出。编译出的目标程序通常还要经历运行阶段,以便在运行程序的支持下运行,加工初始数据,算出所需的计算结果。
编译程序的特点
编译程序必须分析源程序,然后综合成目标程序。首先,检查源程序的正确性,并把它分解成若干基本成分;其次,再根据这些基本成分建立相应等价的目标程序部分。为了完成这些工作,编译程序要在分析阶段建立一些表格,改造源程序为中间语言形式,以便在分析和综合时易于引用和加工。
C语言中,程序文件本身是文本格式,如果只是查看代码的话,可以这样做:打开记事本,使用文件中的“打开”菜单。在d出的对话框中选择文件类型为“所有文件”,然后再浏览到程序文件,点击打开。但是如果需要在编译器环境中进行调试或编译等 *** 作,则必须使用编译器,编译器必须使用与C语言文件在编写时使用的环境要求,不同的编译器提供的库函数不同,不能混用。
高效率:说到程序,运行效率是不可避免的话题。如何提高效率,一是 最准确的算法,二是 一些小的细节,打个比方:for(int i=;i<strGetLength();i++) 就这个循环的判定条件而言,完全可以改成int len=strGetLength(), for(int i=0;i<len;i++);不要小巧这个改懂,如果你的字符串str很长的话,也会影响效率的,因为每循环一次就要调用一次函数GetLength。
以上就是关于如何编译可以独立运行的程序全部的内容,包括:如何编译可以独立运行的程序、简述将源程序编译成可执行程序的过程、易语言如何编译运行等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)