matlab compiler使用,安装和使用MatlabCompilerRuntime
1MCR簡介
MCR之前是Matlab Component Runtime的縮寫,后更名為Matlab Compiler Runtime。MCR實(shí)際上是一組獨(dú)立的共享庫,也即是常說的動態(tài)連接庫,所起的作用是使得你可以執(zhí)行編譯過的matlab文件,與matlab提供的另外兩個庫----數(shù)學(xué)庫和圖形庫不同之處在于它支持matlab語言所有的特性,而不僅僅是數(shù)學(xué)計(jì)算和圖形功能。換句話說他的作用就是給編譯后的matlab文件執(zhí)行提供一個環(huán)境。
并且MCR是一個免費(fèi)的版本,不需要購買Matlab Full Version的License,就可以運(yùn)行Matlab程序。
2MCR安裝和使用
2.1下載MCR
本例中選擇R2012a (7.17)版本,因?yàn)镸CR的版本需要和Matlab編譯器的版本一致才能正常運(yùn)行。下載文件為:MCR_R2012a_glnxa64_installer.zip。
2.2安裝MCR
本文只討論Linux版本MCR的安裝和使用。
首先,將下載的安裝文件zip包上傳到Linux服務(wù)器上的某個目錄下,以/tmp/為例;
然后依次執(zhí)行下面的命令:進(jìn)入目錄:cd /tmp
解壓縮:unzipMCR_R2012a_glnxa64_installer.zip -d MCR_R2012a_glnxa64_installer
進(jìn)入子目錄:cd MCR_R2012a_glnxa64_installer
安裝:./install -mode silent -agreeToLicense ?yes
當(dāng)出現(xiàn)下面的字樣的時候,就表示MCR安裝成功了:Exiting with status 0
End – Successful.
Finished
2.3配置MCR
當(dāng)安裝成功的時候,會提示配置一些系統(tǒng)環(huán)境變量,下面詳述。
在/etc/profile文件的最后添加如下幾行環(huán)境變量(如果安裝的MCR版本不一樣的話,路徑可能會有不同,需要注意修改):export MCR_HOME=/usr/local/MATLAB/MATLAB_Compiler_Runtime
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH: ? ? ? ? ? ? ?$MCR_HOME/v717/runtime/glnxa64:$MCR_HOME/v717/sys/os/glnxa64:$MCR_HOME/v717/sys/java/jre/glnxa64/jre1.6.0/lib/amd64/native_threads:$MCR_HOME/v717/sys/java/jre/glnxa64/jre1.6.0/lib/amd64/server:$MCR_HOME/v717/sys/java/jre/glnxa64/jre1.6.0/lib/amd64
export XAPPLRESDIR=$MCR_HOME/v717/X11/app-defaults
然后執(zhí)行下面的命令使之生效:source ?/etc/profile
2.4使用MCR
下面舉一個簡單的例子來說明如何使用MCR,至于更高級的用法請繼續(xù)深入研究。
2.4.1編譯.m文件
MCR僅僅提供了一個運(yùn)行環(huán)境,并沒有提供編譯環(huán)境,因此還需要在安裝了Matlab編譯環(huán)境的服務(wù)器上對.m文件進(jìn)行編譯。
創(chuàng)建一個簡單的main.m文件,文件內(nèi)容如下:clear all;clc;
diary('/tmp/matlab_log.txt');
diary on;
disp(['begin TIME...' ?datestr(now,31)]);
a = 1985;
b = a * 3;
disp([num2str(a) ' * 3 = ' ?num2str(b)]);
disp(['end TIME...' ?datestr(now,31)]);
diary off;
quit;
這個.m文件僅僅進(jìn)行一些簡單的Matlab運(yùn)算,并將結(jié)果打印到/tmp/matlab_log.txt中,執(zhí)行完畢之后就退出。
執(zhí)行下面的命令對其進(jìn)行編譯:mcc -mv main.m
然后將會產(chǎn)生兩個文件:main和run_main.sh
其中main是編譯后的二進(jìn)制文件,run_main.sh的是一個bash腳本文件,該腳本首先會設(shè)置一些環(huán)境變量然后執(zhí)行main文件。兩個文件的區(qū)別是:如果已經(jīng)配置了前文中的環(huán)境變量的話,直接執(zhí)行main文件即可,沒有配置環(huán)境變量的話就需要執(zhí)行run_main.sh。
2.4.2運(yùn)行.m文件
將上步驟編譯產(chǎn)生的main和run_main.sh拷貝到安裝了MCR的服務(wù)器上,然后就可以直接執(zhí)行它們來運(yùn)行Matlab程序了。
執(zhí)行./main或者./run_main.sh,就會產(chǎn)生類似下面的結(jié)果:begin TIME...2014-01-29 ?11:07:32
1985 * 3 = 5955
end TIME...2014-01-29 11:07:32
總結(jié)
以上是生活随笔為你收集整理的matlab compiler使用,安装和使用MatlabCompilerRuntime的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2020最新java面试题库(杭州)
- 下一篇: Vissim与matlab联调环境配置