matlabgui編譯成可執行文件
A. MATLAB GUI多個m文件和fig如何生成exe文件
1、安裝C編譯器(前提是你的電腦已經安裝了VC)
>>
mbuild
-setup
2、在MATLAB中,將M文件編譯成exe(可執行)文件
定位於包含meun.m,meun.fig的文件路徑下。在command
windows下輸入:
>>
mcc
-B
sgl
GUI1.m
GUI2.m
GUI3.m
有幾個m文件就加幾個
B. 能手把手教一下怎麼把matlab的GUI轉成.exe的可執行文件
1.安裝編譯器
>> mex -setup
Please choose your compiler for building external interface (MEX) files:
Would you like mex to locate installed compilers [y]/n? y
Select a compiler:
[1] Lcc C version 2.4 in C:\MATLAB7\sys\lcc
[0] None
Compiler: 1
Please verify your choices:
Compiler: Lcc C 2.4
Location: C:\MATLAB7\sys\lcc
Are these correct?([y]/n): y
Try to update options file: C:\Documents and Settings\liu\Application Data\MathWorks\MATLAB\R14\mexopts.bat
From template: C:\MATLAB7\BIN\WIN32\mexopts\lccopts.bat
Done . . .
安裝完畢
說明:在命令窗口輸入 mbuild –setup ,對於大多數用戶來說選擇Matlab自帶的Lcc編譯器是足夠!如果要在沒有安裝matlab的計算機上執行編譯後的程序,首先要將\MATLAB7\toolbox\compiler\deploy\win32中的MCRinstaller.exe安裝到該計算機上(7.0以前的版本是mglinstaller.exe)。
2.設置編譯器:
在確定安裝好Matlab Compiler後,還需要對Compiler進行適當的配置,方法是在Matlab命令窗口輸入:
>>mbuild –setup, 按提示選擇matlab自帶編譯器LCC。
3.將腳本編譯為可執行文件:
如項目文件包含:gui.m, gui.gif, fun1.m。
在此路徑下命令行輸入:>>mcc –m gui.m,生 成:mccExcludedFiles.log,ReadMe.txt,gui.ctf,gui.prj,gui_main.c,gui_mcc_component_data.c,gui.exe。其中:gui.ctf,gui.exe為脫離matlab環境運行必需的文件。
4.在未安裝matlab的機器上運行可執行程序。
將toolbox\compiler\deploy\win32中的MCRinstaller.exe安裝到該計算機上,將生成可執行程序脫離matlab運行所需的函數庫。
將2中生成的gui.ctf,gui.exe先拷貝到該計算機同一路徑。再運行gui.exe將生成gui_mcr文件夾,包含程序運行所需的庫。至此完成。
5.去除獨立可執行程序運行時的「DOS黑窗口」。
以上生成的exe程序運行時首先彈出一個DOS界面窗口,如果不需要其輸出數據和錯誤信息,可將其去除。
matlba命令行輸入:
>>cd(prefdir)
>>edit compopts.bat
此時compopts.bat打開,在文件最後添加:
set LINKFLAGS=%LINKFLAGS% -subsystem windows
C. 如何把 Matlab GUI程序轉換成可執行文件
方法一:已有gui.m文件和gui.fig文件1在matlab的command窗口中輸入mcc-BsglGUI.m2.將上步生成的文件包括*m文件和*.fig文件一起考到待運行的機器此時仍需matlab所必需的動態連接庫。
D. 如何將MATLAB程序編譯成獨立可執行的程序
一、生成獨立可執行的程序(exe文件)步驟
1、安裝編譯器。可有多種選擇,matlab自帶了一個LCC,推薦使用VC++6.0,我基於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。
二、脫離matlab運行可執行程序
MCR是由matlab的運行環境,佔用不到300M的對於用不同matlab版本生成的exe文件,MCR版本也會有不同,因此,在程序打包時,最好將相應版本的MCR一起打包。MCR環境的設置文件存放目錄如下:
<matlab path>
\toolbox\compiler\deploy\win32
文件名為MCRInstaller.exe。可將其拷貝到自己的文件夾中,(7.0以前的版本是mglinstaller.exe)。
在MATLAB里運行可執行程序的辦法是在前面加一個!,比如:!picshow,後綴名可有可無。
在其它沒有安裝matlab的機器上運行exe文件前:
首先安裝matlab的運行環境。在同一機器上可以並存不同版本的matlab環境(換句話說不同版本不兼容)。
其次是要將「MCRinstaller.exe安裝目錄\runtime\win32」這個路徑添加到該計算機的環境變數中,通常是自動載入。
如果沒有,也可手動安裝,添加的方法是:
右擊「我的電腦」「屬性」「高級」「環境變數」「添加」指定一個變數名,然後將上述路徑復制到裡面就可以了。
註:在安裝過程中會彈出讓安裝Microsoft.NETFramework可以不用安裝。
最後就是將編譯生成的相相關文件拷貝到同一目錄下,雙擊即可運行。
問題:目前此方法可完全運行在沒有安裝MATLAB以及C/C++的電腦上,但是如果是在AMD的CPU可以運行,但是不會出現任何MATLAB編譯的界面。
美中不足就是,運行的時候dos的那個黑色地窗口一直存在。下面將實現去除黑屏的辦法:
消除運行MATLAB生成的exe程序的dos黑屏的辦法
基於MATLAB生成exe文件後,每次運行都存在dos黑屏的問題,現在可以通過以下方法解決:
方法一: 在命令窗口輸入:
cd(prefdir)
edit compopts.bat
在打開的文件最後添加以下語句:
A.VC環境下:
set
LINKFLAGS=%LINKFLAGS%/SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup
B.LCC環境下:
set LINKFLAGS=%LINKFLAGS%
-subsystemwindows
C. Borland:
set LINKFLAGS=%LINKFLAGS% -aa
保存以後,再重新編譯m文件,生成的exe文件運行起來就沒有dos窗口了
方法二:使用suppress工具:
下載附件中的suppress壓縮包後解壓,(當然您可以自己去Google然後再下載)會看到一個suppress.ini文件,用記事本打開,然後將
其中「Name=test.exe」中text.exe的改為你生成的exe文件名。將suppress.exe(有個關盤和顯示器的圖標),改後的
suppress.ini放到你生成的exe的同目錄下。執行suppress.exe或者您自己生成的exe可以了。當然您可以自己修改
suppress.exe的名字,改為您自己想要的名字。
其中的方法一在使用後生成的exe再到沒有任何安裝MATLAB的機子上運行也不會有黑屏了。
方法二的缺點就是要同時存在您生成的exe以及supress.exe,必須在同一目錄下。
E. 如何將Matlab程序編譯成exe文件
我也是最近才搞定的這個問題,按下述步驟進行,就沒有問題,我已經運行成功,但是遇到你程序的bug的話,便會出現錯誤,關閉整個程序x0dx0a希望這些對你有用x0dx0ax0dx0a如何將MATLAB程序編譯成獨立可執行的程序?如何將編譯好的獨立可執行程序發布在沒有安裝MATLAB的電腦上?下面將一步步實現:x0dx0ax0dx0a一、生成獨立可執行的程序(exe文件)步驟x0dx0ax0dx0a 1、安裝編譯器。可有多種選擇,matlab自帶了一個LCC,推薦使用VC++6.0,我基於VS 2003實現。x0dx0a 2、設置編譯器。在matlab命令行輸入mbuild _setup以及mex _setup,選擇安裝的c編譯器。x0dx0a 3、調用編譯器。此處使用MATLAB下的一個GUI平台deploytool下完全實現。在命令窗口輸入deploytool即可看到。具體使用方法請Help。x0dx0a當然,也可以輸入mcc -m filaname, filaname為要轉成exe的m文件;x0dx0a註:在以前的版本中,用編譯命令mcc -B sglcpp filaname;自2006的版本後,替換為mcc -mfilaname;x0dx0a 4、安裝
F. 如何將matlab gui文件編輯成exe可執行文件
1.打開MATLAB應用程序面板

註:針對的是2014a及其以上的MATLAB版本,沒有可以另外提問問我要,不謝
G. 如何將MATLAB程序編譯成exe文件
1.設置編譯器:
在確定安裝好Matlab
Compiler後,還需要對Compiler進行適當的配置,方法是在Matlab命令窗口輸入:
mbuild –setup, 按提示選擇matlab自帶編譯器LCC。
2.將程序編譯成exe文件:
(1)如果全是M文件
調用格式:
Mcc -m mainmfile mfile1 mfile2 ……
mfileN;
第一個mainmfile 為主程序(main
function),其餘均為需要的M文件。
(2)如果是GUI文件
例如mygui.fig 和mygui.m,編譯這個GUI的命令是:
>>mcc -m
mygui
(3)如果既有GUI文件,又有M文件(誰是主程序,誰放在前)
①>>mcc -m mygui mfile
(mygui是主程序,即mygui中用到mfile.m);
②>>mcc -m mfile
mygui(mfile是主程序,即mfile.m中用到mygui)。
(4)如果GUI用到ActiveX控制項
>>mcc -m mygui -a
myactivex
myactivex
是ActiveX控制項的文件名。
編譯完成後,可通過雙擊生成.exe文件;或者在matlab命令行輸入帶「!」的命令:
>>! mainmfile
(主程序文件名)
3.編譯後的文件可以先打包成一個.exe文件,然後再用隱藏DOS窗口的軟體將該.exe文件彈出的DOS窗口隱藏。
(1)打包軟體很多。如MoleBox Pro;
(2)隱藏DOS窗口的方法或軟體也很多,在各大Matlab論壇上都有,例如:Matlab中文論談。
下面介紹兩種隱藏方法:
方法一: 在命令窗口輸入:
cd(prefdir)
edit compopts.bat
根據你使用的環境,在打開的文件最後添加以下語句:
A.VC環境下:
set
LINKFLAGS=%LINKFLAGS%/SUBSYSTEM:WINDOWS /ENTRY:mainCRTStartup
B.LCC環境下:
set LINKFLAGS=%LINKFLAGS%
-subsystemwindows
C. Borland:
set LINKFLAGS=%LINKFLAGS% -aa
保存以後,再重新編譯m文件,生成的exe文件運行起來就沒有dos窗口了。
方法二:使用suppress工具,點擊下列地址下載(具體操作裡面有說明)。
http://www.mathworks.com/matlabcentral/fx_files/3909/1/suppress.zip
方法一生成的exe再到沒有任何安裝MATLAB的機子上運行也不會有黑屏了。
方法二的缺點就是要同時存在您生成的exe以及supress.exe,必須在同一目錄下。
4.如果目標計算機上沒有安裝該版本的matlab,上面生成的exe文件不能正常運行,解決方法有二:
(1)將該執行文件所需要的dll文件都復制到目標計算機上;
(2)在目標計算機上安裝MCRinstaller.exe。(該文件位於matlab安裝目錄下的
\toolbox\compiler\deploy\win32內)。
將「MCRinstaller.exe安裝目錄\runtime\win32」這個路徑添加到目標計算機的環境變數中,通常是自動載入。
如果沒有,也可手動安裝,添加的方法是:
右擊「我的電腦」「屬性」「高級」「環境變數」「添加」指定一個變數名,然後將上述路徑復制到裡面就可以了。
註:在安裝過程中會彈出讓安裝Microsoft.NETFramework可以不用安裝。
最後就是將編譯生成的相相關文件拷貝到同一目錄下,雙擊即可運行。
H. 如何將matlab gui文件編輯成exe可執行文件
要將用Matlab語言編寫的函數文件編譯成可獨立執行的*.exe文件(即可脫離Matalab環境的執行程序),首先要安裝和配置好Matlab
Compiler,一般來說,在安裝Matlab時就已經安裝了相應版本的Matlab
Compiler。只是不同版本的Matlab,其編譯器的使用方法有一定的差異,這一點要引起一定的注意。
