View Full Version : سوال: حجم بالای فایل اجرایی
mthreat.info
پنج شنبه 24 اردیبهشت 1394, 23:34 عصر
سلام خدا قوت
من تازه وارد دنیای QT شدم همین بدو کار یه چند تا سوال دارم ممنون میشم جواب کامل بهم بدید
1-چرا حجم یه برنامه تولید شده سلام دنیا اینقدر زیاده؟ مثلا 18 مگ چرا آخه؟
2-چطوری حجم رو کم کنم در حد زیر 1 مگ (تولید همین برنامه به زبان های دیگر در همین حد هست)
3-mingw با qml چه فرقی با هم دارن ؟
4-کدوم یکی راحتر و کدوم یکی بهتر و کدوم یکی مطالب آموزشی بیشتر داره؟
من میخوام برای همه پلتفرم ها خروجی بگیرم با یک بار کد زدن و از اون مهم تر حجم فایل اجرایی برام مهمتره
نسخه ای که من دارم استفاده میکنم
Qt_5.4.1_for_Android_Windows_32-bit
راستی در حالت
release کامپایل میکنم
5-شما کدوم نسخه رو پیشنهاد میدید ؟ چرا ؟
ممنون میشم راهنماییم کنید
golbafan
جمعه 25 اردیبهشت 1394, 01:25 صبح
1- شما برنامه رو در حالت دیباگ کامپایل میکنید
2- حالت release کامپایل کنید
3- اولی کامپایلره سطح پایین هست تحت لیسانس گنو و دومی یک زبان برنامه نویسی اساسش بر زبان جاواسکریپت هست (مقایسه دو چیز متفاوته)
4- بستگی به کاربر داره ولی درکل mingw قویتره
5- هر نسخه را بهر کاری ساختند
mthreat.info
جمعه 25 اردیبهشت 1394, 01:42 صبح
لطفا بیشتر توضیح بدید
stackprogramer
جمعه 25 اردیبهشت 1394, 07:47 صبح
درود
برای ساخت اپلیکشن داخل کیوت دونوع روش برای ساخت فایل اجرایی وجود داره،یک روشی که شما رفته اید و کتابخانه کیوت به پروژه شما لینک شده،که این زیادی حجم دیگه با بزرگ شدن برنامه دیگه خیلی کم زیاد می شه نگران نباشید،این جا فقط لایبرری را اضافه کرده،روش مینستور که بیلد کنی،حجم فایل در حد زیر یک مگابایت می شه،ولی برای دانلود اپ های مبتنی بر کیوت طرف مشتری باید Qt ministro رو گوگل پلی به طور رایگان دانلود و نصب کنه (10مگ)بعد اپ های کیوت نصب می شه،در روش اول کیوت مینیستورو لازم نبود
بابا اشتباه نکنید mingw کامپایر جی سی سی برای ویندوز است،کامپایلر سی،تو با این مود برای ویندوز می سازی،اما
باsdk android تو برای اندروید اپ می سازی،هر دوتاش کاربرد هاش فرق داره،کیوت یک پروژه اپن سورس است برای یادگیر ی بهتر ،باید لینوکس ها کمی کار کنی
mthreat.info
جمعه 25 اردیبهشت 1394, 09:48 صبح
ممنون ، اگه میشه به بقیه سوالاتم جواب بدید ممنون میشم
chikar
جمعه 25 اردیبهشت 1394, 10:18 صبح
ممنون ، اگه میشه به بقیه سوالاتم جواب بدید ممنون میشم
جواب همه سوالاتون رو که آقای golbafan (http://barnamenevis.org/member.php?101169-golbafan) دادند. من هم یه کمی بیشتر توضیح می دم
1- زیاده، چون کلاس های کیوت در قالب dll به برنامه شما اضافه می شن، ولی خود فایل .exe شما حجمی نداره!
2- برای کاهش حجم برنامه هاتون اول همیشه از مد release استفاده کنید، دوم می تونید به صورت استاتیک کامپایل کنید(البته غیر قانونی است و در صورت ارتکاب چنین کاری باید سورس رو هم منتشر کنید)، کامپایل استاتیک باعث می شه، فقط یه فایل .exe داشته باشید و کلاس های ضروری و استفاده شده کیوت در برنامه تون هم همراه برنامتون کامپایل می شه.
3-مثل این می مونه بگی آسمون با زمین چه فرقی داره!!! mingw یک کامپایلر برای زبان C++ هست مثل ویژوال استادیو ولی QML یک ابزار برای رابط کاربری قوی، بازی سازی و در کل کار با گرافیک هست که بر پایه C++ و جاوا اسکریپت نوشته شده است.
4- اصلا ربطی به هم ندارن mingw و qml که بگیم کدوم بهتره!!!
5- برای گرفتن خروجی در همه پلتفرم ها، باید کدی که نوشتید رو ببرید تو اون جا و دوباره کامپایل کنید و خروجی متناسب با اون سیستم عامل رو بگیرید
انتخاب نسخه هم بر اساس نیاز شما انجام می شه، اگر تو ویندوز دارید کار می کنید، می تونید از کتابخونه کیوت + کامپایلر ویژوال استادیو یا mingw استفاده کنید، اگر تو لینوکس کار می کنید ، کتابخونه کیوت + کامپایلر g++
ravaei
جمعه 25 اردیبهشت 1394, 23:00 عصر
اینجا بچه ها کامل توضیح دادن
http://barnamenevis.org/showthread.php?484864-%D9%81%D8%A7%DB%8C%D9%84-exe-%DA%A9%D8%AC%D8%A7-%D8%B0%D8%AE%DB%8C%D8%B1%D9%87-%D9%85%DB%8C%D8%B4%D9%87-%D8%9F
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.