




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、Matlab生成EXE可執(zhí)行文件1、M文件生成可執(zhí)行文件1.1、Run timeserver的配置執(zhí)行這個(gè)命令要在命令提示符下進(jìn)入matlabtoolboxruntimebinwin32目錄。輸入:rtsetup f %matlab%binwin32matlab.exe s * 。這兒*代表你輸入的N個(gè)數(shù)字或者字母,它將作為未來(lái)開(kāi)發(fā)的應(yīng)用程序的密碼用來(lái)識(shí)別不同的文件是否出自同一程序。在正常情況下,執(zhí)行完這居命令以后,dos不會(huì)有任何提示符。1.2、編寫在matlab中運(yùn)行的程序1.3、編寫配置文件把toolboxruntime下面的兩個(gè)模板文件matlabrt_template.m,和path
2、defrt_template.m文件修改程自己的 matlabrt.m和 pathdefrt.m文件。1.4、編譯生成p文件把你要編譯的源程序放在toolboxlocal目錄下一個(gè)子目錄中, 然后把這個(gè)目錄設(shè)為matlab的當(dāng)前目錄一定要保證這一點(diǎn)。在matlab中輸入如下命令:LOG, DEPFUNOUT, PCODEOUT = BUILDP(matlabrt);如果出現(xiàn)BUILDP finished but there may be file(s) with either problem symbols or EVAL-like constructs. Check BUILDP log f
3、or details. 。這是很正常的,很多時(shí)候都會(huì)出現(xiàn)這個(gè)提示。輸入:Depfunout1把它的內(nèi)容拷到toolboxruntimeoem的list.txt中去(如果沒(méi)有l(wèi)ist.txt則新建).1.5、打包,發(fā)布退出matlab,打開(kāi)命令提示符,到toolboxruntimeoem下,執(zhí)行packege。按照它的提示先后輸入matlab的目錄,文件列表名稱(list.txt),還有應(yīng)用程序的名稱。在toolboxruntimeoem下生成一個(gè)setup程序。2、GUI生成可執(zhí)行文件EXE2.1 方法一一般我們?cè)诰帉慚atlab中的GUI時(shí),我們都是生成一個(gè)fig文件和一個(gè)m文件的,但是如果
4、我們要生成獨(dú)立的應(yīng)用程序,就是exe程序時(shí),最后讓它把兩個(gè)文件合成一個(gè)文件,這樣容易生成。方法是在figure窗口中點(diǎn)擊file下的export就行了,生成默認(rèn)文件名為×_export.m文件。(比如a_export.m) (說(shuō)明:如果,同時(shí)有兩個(gè)GUI文件,進(jìn)行這樣編輯,會(huì)報(bào)錯(cuò)!)2.1.1、安裝編譯器matlab complier如果你已經(jīng)安裝matlab complier就直接運(yùn)行mcc -m a_export.m,此步就不需要做。安裝matlab complier的過(guò)程如下:在窗口中輸入:mbulid -setup出現(xiàn):Please choose your compiler
5、for building standalone MATLAB applications: Would you like mbuild to locate installed compilers y/n?輸入y,然后回車,出現(xiàn)Select a compiler: 1 Lcc-win32 C 2.4.1 in D:MATLABR2007bsyslcc 0 None Compiler:如果你機(jī)器上有vc+之類的編譯器的話,也會(huì)被列出來(lái)的,這里我們輸入1,然后回車,出現(xiàn)如下:Please verify your choices: Compiler: Lcc-win32 C 2.4.1 Location
6、: C:MATLABR2009asyslcc Are these correct?(y/n):然后輸入y,表示確認(rèn)就行了,出現(xiàn)安裝成功信息,如下:Trying to update options file: C:Documents and Settings. .Application DataMathWorksMATLABR2007bcompopts.bat From template:D:MATLABR2007bbinwin32mbuildoptslcccompp.bat Done . . .2.1.2、生成EXE文件1. 在matlab的command窗口中輸入 :mcc -B sgl G
7、UI.m或者mcc -m a_export.m,將生成的文件包一起考到待運(yùn)行的機(jī)器。2. 將 <matlab path >/extern/lib/win32/mglinstallar.exel拷貝到到待運(yùn)行機(jī)器上。3. 在機(jī)器上先運(yùn)行mglinstallar.exe, 然后選擇解壓目錄,將在指定目錄下解壓縮出bin和toolbox兩個(gè)子目錄,其中在binwin32目錄下就是數(shù)學(xué)庫(kù)和圖形庫(kù)脫離MATLAB運(yùn)行所需的所有動(dòng)態(tài)連接庫(kù),共有37個(gè)??梢詫⑦@些.dll考入system32, 也可以直接放在應(yīng)用程序目錄下。而toolbox目錄則必須與應(yīng)用程序同一目錄。 即:如果想把生成的exe
8、程序在其他沒(méi)有matlab的機(jī)子上運(yùn)行,需要安裝MCRInstaller,可以在matlab的安裝目錄里面搜索到。這樣把這個(gè)安裝到?jīng)]有matlab的機(jī)子上,就可以運(yùn)行生成的exe程序了。 2.2 方法二2.2.1、轉(zhuǎn)化為c/c+程序并編譯為.exe先驗(yàn)證mcc是否可用,用matlab中的example驗(yàn)證即可,建議不用matlab默認(rèn)的lcc 編譯器(可能有問(wèn)題),可使用VC6編譯器(按默認(rèn)路徑安裝),由于帶有界面,需要圖像庫(kù)支持,編譯時(shí)應(yīng)使用命令: mcc -B sglcpp pressure,編譯生成若干c/c+源碼,以及.exe文件、bin目錄中figure菜單條/工具條文件(.fig)
9、等程序發(fā)布需要.exe、bin、.fig2.2.2、在未裝matlab的電腦上運(yùn)行程序需要數(shù)學(xué)運(yùn)行時(shí)庫(kù)、圖像運(yùn)行時(shí)庫(kù)以及用到的工具箱mex文件前兩者已經(jīng)在matlabexternlibwin32mglinstaller.exe壓縮包中,將其解壓,并在環(huán)境變量path中添加解壓到的路徑另外若程序中還用到其他工具箱的東西,那么需要將此工具箱中需要的mex文件也一并放在解壓到的路徑,子文件夾位置與matlab中的位置相同3. 在確保.exe程序可以運(yùn)行的情況下 可以用setup factory打包發(fā)布以下通過(guò)注冊(cè)表自動(dòng)添加path路徑%-Screen.Next(); - 進(jìn)入下一個(gè)屏幕resultD
10、ialog = Dialog.Message("注意", "向環(huán)境變量中加入matlab數(shù)學(xué)庫(kù)及圖象庫(kù)的安裝路徑?", MB_YESNO, MB_ICONINFORMATION, MB_DEFBUTTON1);if (resultDialog = IDYES) then -加入安裝路徑strPath = Registry.GetValue(HKEY_CURRENT_USER, "Environment", "path", true);if strPath = "" thenstrPath = S
11、tring.Concat(strPath, "");end strPathToAdd = SessionVar.Expand("%AppFolder%");strPathToAdd = String.Concat(strPathToAdd,"file:/MATLAB6p5/bin/win32"); - 如果路徑中無(wú)該位置,則加入if String.Find(strPath,strPathToAdd) = -1 then strPath = String.Concat(strPath, strPathToAdd);Registry.Se
12、tValue(HKEY_CURRENT_USER, "Environment", "path", strPath, REG_SZ);end end%-3、消除DOS窗口消除運(yùn)行MATLAB生成的exe程序的dos黑屏的辦法,基于MATLAB生成exe文件后,每次運(yùn)行都存在dos黑屏的問(wèn)題,現(xiàn)在可以通過(guò)以下方法解決:在命令窗口輸入:cd(prefdir)edit compopts.bat在打開(kāi)的文件最后添加以下語(yǔ)句:A.VC環(huán)境下:set LINKFLAGS=%LINKFLAGS%/SUBSYSTEM:WINDOWS/ENTRY:mainCRTStartu
13、pB.LCC環(huán)境下:set LINKFLAGS=%LINKFLAGS% -subsystem windowsC. Borland:set LINKFLAGS=%LINKFLAGS% -aa保存以后,再重新編譯m文件,生成的exe文件運(yùn)行起來(lái)就沒(méi)有dos窗口了如果你的m文件不是R2009根文件的話 要吧這個(gè)bat文件拷貝到你要編譯的m文件下再運(yùn)行mcc編譯 否則也是不會(huì)消除DOS窗口的!對(duì)于2010版本上述的方法的失效,下面的方法的可以解決matlab2010生成exe消除DoS窗口最新版Matlab2010編譯后用了之前的一些方法嘗試消除黑框,發(fā)現(xiàn)無(wú)法實(shí)現(xiàn)。去matlab官網(wǎng)看了看,上邊有明確
14、的方法運(yùn)行:mcc -e filename就可以了,實(shí)驗(yàn)成功。教你隱去gui生成exe后,執(zhí)行exe時(shí)出現(xiàn)的dos窗口前幾天我在論壇里提了如題的問(wèn)題,沒(méi)有得到直接答復(fù),但是感謝回帖,因?yàn)榘凑栈靥膬?nèi)容我找到了答案,驗(yàn)證了一下,可以用。(有帖子可以下載具體操作,但我M幣又不想花錢,只好自己去搞)首先,你到math的官網(wǎng)上 now:”后的zip按鈕。下來(lái),在下載了一個(gè)名為suppress壓縮包后解壓,會(huì)看到一個(gè)suppress.ini文件,用記事本打開(kāi),然后將其中“Name=test.exe”中text.exe的改為你生成的exe文件名。最后,將suppress.exe(有個(gè)關(guān)盤和顯示器的圖標(biāo)),
15、改后的suppress.ini放到你生成的exe的同目錄下。執(zhí)行suppress.exe就可以了。ps:以上具體操作是按照壓縮包中readme進(jìn)行的,小弟英語(yǔ)很破,里面的內(nèi)容沒(méi)有完全交待清楚,不敢妄加指導(dǎo),具體操作可自行參見(jiàn)其中說(shuō)明。謝謝瀏覽!4、更改matlab生成exe文件的圖標(biāo)假設(shè)你的圖標(biāo)文件是:DA.ico;你想編譯的m文件是:data.m第一步:創(chuàng)建一個(gè)文本文件,里面寫入"ConApp ICON DA.ico"第二步:把剛才的文本文件重命名為一個(gè)rc文件,如DA.rc第三步:在matlab命令窗口中鍵入:system('"' matlab
16、root 'syslccbinlrc" /i "' pwd 'DA.rc"');這一步是把DA.rc和DA.ico編譯到一起,此時(shí)在你的當(dāng)前工作目錄下會(huì)生成一個(gè)名為DA.res的resource file 第四步:將m文件與res文件一起編譯:mcc -m data.m -M DA.res5、GUI編譯生成的EXE文件轉(zhuǎn)換成安裝程序用MATLAB編寫的界面生成的EXE文件使用的時(shí)候直接打開(kāi)就可以用比較方便,但現(xiàn)在大部分軟件都帶有安裝程序和卸裝程序,它們具有相通的界面,給用戶帶來(lái)了很大的方便,同時(shí)也使得軟件很有專業(yè)感。 Install
17、 Us (5.53M)。 1、制作安裝程序開(kāi)始運(yùn)行InstallUS 后,會(huì)彈出Project項(xiàng)目開(kāi)始窗口,它的運(yùn)行窗口顯示如圖1的界面,也可以從選擇File選單下的New項(xiàng),彈出此窗口。第一項(xiàng)是軟盤(Disks),第二項(xiàng)是光盤(CD),第三項(xiàng)是制作成一個(gè)自解壓文件,第四項(xiàng)是讓我們打開(kāi)以前的項(xiàng)目文件(Open Project-File)以便修改,同時(shí)還有一個(gè)選項(xiàng)“Don't Show this dialog next time”,一般不選,如果選中了下次就不會(huì)出現(xiàn)這個(gè)對(duì)話框了,不過(guò)我們還是可以通過(guò)點(diǎn)擊第一步General Settings的Medium按鈕來(lái)選擇發(fā)行介質(zhì)。我是希望生成一
18、個(gè)自解壓的安裝文件,所以選擇Internet-Download,這樣最后會(huì)生成一個(gè)自解壓安裝程序文件setup.exe。 2、設(shè)置被安裝軟件的主要配置在選擇了最終發(fā)行介質(zhì)之后,進(jìn)入制作第一步設(shè)置被安裝軟件的主要配置,此時(shí)會(huì)出現(xiàn)圖2的界面,在主要配置General Settings選項(xiàng)中,你可以設(shè)定被分發(fā)的軟件安裝后在機(jī)器上的目標(biāo)目錄Directory,例如:你制作出的安裝盤,運(yùn)行后軟件指定要安裝在“C: Program Files東方之珠”文件夾下,則在 Directory輸入框中輸入C:Program Files東方之珠;在 Configurations配置中,指定提供給用戶可以選擇的安裝配置方式,常用的方式有缺省、最小、定制三種。本例“東方之珠 ”只提供典型 Typical方式,所以只選擇Typecal一項(xiàng)。軟件的配置設(shè)定(如圖2
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 隧道工程安全教育培訓(xùn)
- 幼兒園中班心理健康之微笑教育
- 口腔護(hù)理新手培訓(xùn)課件
- 論文的英文標(biāo)紅怎么處理
- 教師心理健康教育方案
- 畢業(yè)論文營(yíng)銷
- 中班養(yǎng)成教育:如廁習(xí)慣培養(yǎng)
- 早產(chǎn)兒護(hù)理疑難病例討論
- 瑪麗艷產(chǎn)品課件
- 洗胃的禁忌癥及護(hù)理常規(guī)
- 2025年高考云南卷歷史高考真題(無(wú)答案)
- 中醫(yī)茶飲培訓(xùn)課件模板
- 2025至2030中國(guó)實(shí)木門行業(yè)發(fā)展趨勢(shì)分析與未來(lái)投資戰(zhàn)略咨詢研究報(bào)告
- 2025年安徽省高考生物試卷(含答案解析)
- (湖北省高考卷)2024年湖北省普通高中學(xué)業(yè)水平選擇性考試高考物化生+政史地真題試卷及答案
- 真實(shí)情境下的“5E”教學(xué)模式在高中化學(xué)教學(xué)中的應(yīng)用與成效探究
- 湖北省武漢市武昌區(qū)三年級(jí)下學(xué)期數(shù)學(xué)期末試卷(含答案)
- 2025年人教版七年級(jí)下冊(cè)地理全冊(cè)知識(shí)點(diǎn)
- 2024-2025學(xué)年人教PEP英語(yǔ)六年級(jí)下學(xué)期期末模擬試卷(含答案含聽(tīng)力原文無(wú)音頻)
- 廣東省珠海市香洲區(qū)2023-2024學(xué)年七年級(jí)下學(xué)期語(yǔ)文期末試卷(含答案)
- 供熱領(lǐng)域自查工作報(bào)告
評(píng)論
0/150
提交評(píng)論