delphi4arab منتديات دلفي للعرب
بنية X64 - 64 Bit و استعمال Lazarus - نسخة قابلة للطباعة

+- delphi4arab منتديات دلفي للعرب (https://delphi4arab.net/forum)
+-- قسم : متتديات باسكال Pascal (https://delphi4arab.net/forum/forumdisplay.php?fid=7)
+--- قسم : Lazarus - Free Pascal - CrossKylix - Kylix - CrossVCL (https://delphi4arab.net/forum/forumdisplay.php?fid=34)
+--- الموضوع : بنية X64 - 64 Bit و استعمال Lazarus (/showthread.php?tid=1504)



بنية X64 - 64 Bit و استعمال Lazarus - STRELiTZIA - 15-01-2010

السلام عليكم و رحمة الله
كل من جرب استعمال بيئة التطوير Lazarus التي تستعمل Free pascal compilerاصيب بصدمة كبيرة عند ملاحظة ان مشروع فارغ ينتج ملف تنفيذي كبير الحجم، اكثر من 10MB بكثير، و بعد البحث في منتدى بيئة التطوير حصلت على الاجابة الشافية من مطوري البيئة...

طريقة تقليص الحجم :
كود :
1. Project|Compiler Options|Code|Smart Linkable (-CX) -> Checked 2. Project|Compiler Options|Linking|Debugging|Display Line Numbers in Run-time ErrorBacktraces (-gl) -> Unchecked 3. Project|Compiler Options|Linking|Debugging|Strip Symbols From Executable (-Xs) -> Checked 4. Project|Compiler Options|Linking|Link Style|Link Smart (-XX) -> Checked

الطريقة مجربة و تعمل دون مشاكل... على x86-32bit و x64-64bit

ملاحظة بيئة التطوير قيد التطوير و هي الوسيلة الوحيدة لعمل تطبيقات x64 او multi platformالى ان نرى اصدار دلفي يدعم بيئة x64 في المستقبل القريب...

بالتوفيق ان شاء الله


بنية X64 - 64 Bit و استعمال Lazarus - Moha711 - 16-07-2010

نعم حدث معي نفس المشكل
شكرا لك على الموضوع


بنية X64 - 64 Bit و استعمال Lazarus - kachwahed - 11-06-2011

أهم نقطة كما جاء المصدر هي:
كود :
3. Project|Compiler Options|Linking|Debugging|Strip Symbols From Executable (-Xs) -> Checked
طبعا مع التأكد من عدم إدراج أي معلومات Debugging في الملف الناتج:
كود :
Project|Compiler Options|Linking|Debugging| Uncheck all except Strip Symbols From Executable (-Xs) -> Checked
ذلك لأن الـ Debugger صاحب أكبر قسط من حجم الناتج بإضافته إلى Debug Information
غير أنك ستخسر خاصية التتبع خطوة خطوة مع نقاط توقف (Debugging)
نفس النتيجة يمكن الحصول عليها باستخدام الأداة المرفقة:
كود :
lazarus\fpc\2.4.2\bin\i386-win32\strip.exe
الاستخدام:
PHP كود :
strip --strip-all <your executable file with path> 
بهذا يصبح حجم تطبيق فارغ 1.55 Mb دون ضغط (بعد UPX يصبح 500 تقريبا) في الإصدار 0.9.30 حاليا
أشياء أخرى يمكن اختزالها لتقليص الحجم:
كود :
XML handling library Image handling library for png, xpm, bmp and ico files Almost all widgets from the Lazarus Component Library All of the Free Pascal Runtime Library

المصدر:
كود :
http://wiki.lazarus.freepascal.org/Lazarus_Faq#Why_are_the_generated_binaries_so_big.3F
بالتوفيق.



بنية X64 - 64 Bit و استعمال Lazarus - moh38 - 19-12-2011

لتقليص حجم الملف التنفيذي الناتج بعد البناء ببرنامج lazarus

مثلا لدينا التطبيق (poject1.exe) الذي حجمه 12.3 ميغا في الدليل التالي (C:\laz38\poject1.exe)
*نفتح موجة الاوامر الدوس ونبحث عن ملف (strip.exe) الموجود في الدليل (C:\lazarus\fpc\2.4.2\bin\i386-win32)
ونكتب العبارة التالية(C:\lazarus\fpc\2.4.2\bin\i386-win32\strip c:\laz38\project1.exe
ثم Enter
فيتم تقليص حجم الملف الى 1.55 ميغا بعد ان كان 12.3 ميغا
وشكرا