matlab程序發布為獨立應用程序(從網上整理來的資料):
資料一:
7.3.4 編譯后程序的發布
無論編譯后產生的是可執行文件,還是動態連接庫,要使它們能夠發布到別的沒有安裝
MATLAB的計算機上使用,必須在目標計算機上安裝MCR,不能只是簡單地把編譯后產生的文
件復制到目標計算機上。
可以利用MATLAB命令buildmcr來創建可以發布給最終用戶的MCR安裝文件。buildmcr的功能
是創建一個包含MCR需要的所有文件的ZIP壓縮文件。buildmcr有如下兩種調用方式:
zipfile = buildmcr
zipfile = buildmcr(dirname)
其中返回值zipfile是產生MCRInstaller.zip的完整路徑名。在沒有輸入參數的情況下,
buildmcr會把產生的MCRInstaller.zip保存到地址
$MATLAB/toolbox/compiler/deploy/<arch> /MCRInstaller.zip。
其中$MATLAB代表MATLAB的安裝目錄,<arch>代表不同的計算機架構。比如在Windows上,默
認的MCRInstaller.zip的路徑為$MATLAB\toolbox\compiler\deploy\win32\
MCRInstaller.zip。
相應地,在Linux上,默認的MCRInstaller.zip的路徑為$MATLAB/toolbox/compiler/
deploy/glnx86/MCRInstaller.zip。
也可以使用輸入參數dirname來指定MCRInstaller.zip的保存目錄。buildmcr('.')將把產生
的MCRInstaller.zip保存到當前工作目錄。
一般來說,需要發布的文件有3個:
(1)編譯得到的可執行文件或者庫函數。
(2)CTF文件。
(3)MCRInstaller.zip。
在最終用戶的計算機上,首先需要把MCRInstaller.zip解壓,并把MCR中可執行文件所在目
錄加到系統路徑上,然后就可以使用編譯后的程序了。
注意:MCR不支持在startup.m中使用addpath命令增加搜索路徑。
startup.m是一個可以讓用戶設置一些關于MATLAB運行的個性化設置。如果你在運行MATLAB
編譯器的計算機上使用startup.m來給MATLAB增加一些特別的搜索路徑,那么發布的程序運
行時會報錯。必須讓addpath命令只在非發布情況下才有效。利用isdeployed命令,在
startup.m判斷是否運行相關的命令:
if ~isdeployed
addpath(…)
%其他一些命令
endif
另外,編譯后發布的程序在運行時需要先把CTF解壓。所以在運行這些程序時需要確保對CTF
文件所在目錄有寫權利。否則,發布的程序在執行時會報錯。如果編譯后的程序以光盤的方
式發布,那么程序必須先復制到硬盤的某個目錄,然后才運行。
資料二:
1、使用matcom方法,但是matcom函數太少,不適合使用。
2、將matlab文件通過命令生成動態鏈接庫dll,在VC程序中調用。(注:與資料一的敘述有
矛盾這處)
3、直接在客戶機上安裝$MATLAB\toolbox\compiler\deploy\win32目錄下的
MCRInstaller.exe程序(83M),就可以了。或者通過matlab命令生成一個CRInstaller.zip
文件,解壓縮到客戶機上,并將動態鏈接庫目錄(??是bin目錄嗎?)添加到PATH環境變
量中。相比之下還是運行MCRInstaller.exe省事一些,雖然比MCRInstaller.zip要大一點。