14-1 MATLABs譯簡

MATLAB編譯器(MATLAB Compiler)可以將使用者所寫的MATLAB函式轉換成C程式碼(Source Code)或共享程式庫(Shared Library),這些C程式碼或程式庫就可以被用在各種外部應用程式中,使這些外部應用程式具有MATLAB的完整功能,包含

更重要的是,你可以將這些外部應用程式的執行檔給予他人使用,而對方的執行平台並不需要安裝MATLAB。因此,只要使用MATLAB編譯器,我們就可以將各種MATLAB程式碼及相關功能,內嵌到各種外部應用程式,以便於利用或展示MATLAB的各項功能。

更詳細地說,MATLAB編譯器具有下列功能:

在研讀本章之前,讀者必須先瞭解本書第三章「應用程式介面」的內容,才能夠深入瞭解MATLAB編譯器的功能。另,由於篇幅有限,本章對於MATLAB編譯器的範例和說明,有下列幾項原則:

在進入範例說明前,我們必須先設定電腦上的C編譯器,以便用於MATLAB編譯器,方法如下述。

首先,我們在MATLAB命令視窗下輸入「mbuild -setup」,系統回應如下:

Welcome to mbuild -setup. This utility will help you set up a default compiler. For a list of supported compilers, see http://www.mathworks.com/support/compilers/R2011a/win64.html Please choose your compiler for building standalone MATLAB applications: Would you like mbuild to locate installed compilers [y]/n?

輸入「y」之後,按下 Enter,此時系統回應如下:

Select a compiler: [1] Microsoft Visual C++ 2010 in c:\Program Files (x86)\Microsoft Visual Studio 10.0 [2] Microsoft Visual C++ 2008 SP1 in c:\Program Files (x86)\Microsoft Visual Studio 9.0 [0] None Compiler:

這些C編譯器是MATLAB在你的電腦自動偵測出來的結果(所以在不同的電腦會得到不同的結果),在本章的說明,我們將以C/C++ 10.0為主,所以我們輸入「1」,並按下 Enter,此時系統還會要求你確認,只要你再按下「y」及 Enter,就完成了C編譯器的設定。

Hint
若在上述過程中,出現錯誤訊息,你可以先進行「mex -setup」,再進行「mbuild -setup」,可能就可以解決你的問題。

以下兩小節將說明如何以命令列的方式,來將MATLAB函式轉成可執行檔以及共享程式庫。事實上,我們也可以使用圖形使用者介面的方式來達到同樣功能,相關的MATLAB指令是「deploytool」,但這方面的細節較多,為節省篇幅,不在此詳述,相關資訊可以參考鈦思科技提供的PDF檔案(位於本書範例光碟的本章範例目錄中)。


MATLAB程式設計:進階篇