基於MATLAB2008B與VS 2003生成獨立可執行的程序

基於MATLAB2008B與VS 2003生成獨立可執行的程序

 

基於MATLAB2008BVS 2003生成獨立可執行的程序

 


如何將MATLAB程序編譯成獨立可執行的程序?如何將編譯好的獨立可執行程序發佈在沒有安裝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爲要轉成exem文件;
注:在以前的版本中,用編譯命令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可以不用安裝。
最後就是將編譯生成的相相關文件拷貝到同一目錄(若出現"...ADDPATH....:"之類的error.則說明環境path 有衝突[可能有多個不同版本的crt庫],這樣只有copy:編譯生成的相相關文件runtime/win32  )下,雙擊即可運行。***
問題:目前此方法可完全運行在沒有安裝MATLAB以及C/C++的電腦上,但是如果是在AMDCPU可以運行,但是不會出現任何MATLAB編譯的界面
美中不足就是,運行的時候dos的那個黑色地窗口一直存在。
發佈了35 篇原創文章 · 獲贊 12 · 訪問量 43萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章