ساخت فایل exe ، با دستورهای deploytool و mcc ، در متلب (MATLAB)
فرض کنید که یک برنامه کاربردی ساخته اید و اکنون قصد دارید که آن را در اختیار اشخاص دیگری قرار دهید تا از آن استفاده نمایند، ولی خوب مسلما هر کسی بر روی کامپیوتر خود نرم افزار متلب (MATLAB) را به صورت نصب شده ندارد و متلب هم نرم افزار کم حجمی نیست که فرد سریع آن را از اینترنت بگیرد و نصب کند. در اینگونه مواقع، ساخت یک فایل exe از برنامه، بسیار مفید خواهد بود تا هر کس تنها با کلیک بر روی آن، قادر به اجرای آن برنامه کاربردی باشد.
البته باید تذکر بدهم که قبل از اجرای فایل بر روی یک کامپیوتر دیگر که متلب بر روی آن نصب نیست، یک پیش نیاز باید بر روی آن کامپیوتر نصب شود. این پیش نیاز، MCR می باشد و در خود فولدری که متلب در آن نصب شده است، می توانید آن را بیابید تا بعدا بر روی کامپیوتر مقصد، آن را نصب کنید. به عنوان مثال، بر روی کامپیوتر من، متلب در فولدر C:\Program Files\MATLAB نصب شده است و فایل با نام MCRInstaller که برای نصب MCR به کار می رود، در آدرس زیر قرار گرفته است :
C:\Program Files\MATLAB\R2011a\toolbox\compiler\deploy\win64\
این فایل حدود 200 مگابایت حجم دارد که باید آن را بر روی کامپیوتر مقصد اجرا کنیم تا فایل exe که می سازیم، بر روی آن کامپیوتر قابل اجرا باشد.
علاوه بر پیش نیاز فوق، متلب شما نیز نباید خیلی قدیمی باشد و در کل به شما توصیه می کنم که از جدیدترین شماره نرم افزار متلب استفاده کنید.
اکنون شرح می دهیم که چگونه یک فایل exe ، از یک برنامه، که در یک m-file آن را نوشته ایم، بسازیم. ابتدا کد زیر را، در یک m-file با نام program.m ، می نویسیم :
y=x.^2;
plot(x,y)
نتیجه اجرای این m-file ، نمایش شکل زیر می باشد :
حال برای تبدیل برنامه فوق به یک فایل exe ، از دو روش مختلف می توانیم استفاده کنیم که در ادامه آنها را شرح داده ایم :
روش اول: ساخت فایل exe با دستور deploytool در متلب
ابتدا در پنجره Command ، دستور deploytool را اجرا می کنیم، یعنی می نویسیم :
سپس پنجره ای به شکل زیر باز شود :
دقت کنید که منوی با نام New انتخاب شده است و همچنین در جلوی عنوان Type ، گزینه Windows Standalone Application انتخاب شده باشد. علاوه براین، نام دلخواه و مکان دلخواهی را برای فایل انتخاب می کنیم (من نام program.prj را انتخاب می کنم). سپس بر روی دکمه ok کلیک می کنیم. درون پنجره اصلی نرم افزار متلب، پنجره ای به شکل زیر باز می شود :
نام این پنجره، Windows Standalone Application می باشد. بر روی گزینه Add main file ، در این پنجره، کلیک می کنیم و سپس program.m را انتخاب می کنیم که همان m-file ای هست که می خواهیم توسط فایل exe ، برنامه نوشته شده در آن اجرا شود. پس از انتخاب، کمی صبر کنید تا متلب، فایل را بررسی کند (بستگی به پیچیدگی و حجم برنامه دارد). سپس در بالای پنجره Windows Standalone Application ، یک دکمه به نام Build وجود دارد، بر روی آن کلیک می کنیم. در این زمان، متلب ساخت فایل exe را شروع می کند که معمولا چند دقیقه طول می کشد و پنجره زیر نمایش داده می شود :
پس از پایان پردازش ها، بر روی دکمه close که نمایش داده می شود، کلیک کنید. متلب در محلی که قبلا تعیین کرده ایم، یک فولدر با نام program می سازد که درون آن، دو فولدر با نام های distrib و src وجود دارد که فایل exe مورد نظر ما، درون فولدر distrib قرار گرفته است. درون فولدر distrib ، یک فایل exe با نام program و به شکل نماد مشهور نرم افزار متلب وجود دارد که با کلیک کردن بر روی آن، دستورات، اجرا شده و سپس تصویر زیر نمایش داده می شود :
روش دوم : ساخت فایل exe با دستور mcc در متلب
برای ساخت فایل exe ، با استفاده از دستور mcc ، ابتدا آدرس Current Folder را به آدرس فولدر حاوی برنامه program.m ، تغییر بدهید. سپس دستور زیر را در پنجره Command اجرا کنید :
باید چند دقیقه صبر کنید تا پردازش های متلب، برای ساخت فایل exe ، تمام شود. سپس فایل program.exe در همان فولدر حاوی برنامه program.m ساخته خواهد شد. با کلیک بر روی فایل exe ، یک پنجره محیط dos باز شده و پس از مدتی پردازش، شکل زیر نمایش داده می شود :
سلام
من میخوام پروژه ای که با متلب نوشته ام را روی سروری اجرا کنم که متلب ندارد، این روشی که بیان کرده اید کارا هست؟
و اینکه m فایل اصلی من چند تابع دیگر را فراخوانی میکند که در m فایل های جداگانه ای نوشته شده اند،
برای تبدیل به فایل exe فقط m فایل اصلی را تبدیل کنم؟