إطلاق GNU Mes 0.23، وهي مجموعة أدوات لبناء التوزيع المستقل

بعد عام من التطوير، تم إصدار مجموعة أدوات GNU Mes 0.23، مما يوفر عملية تمهيد لدول مجلس التعاون الخليجي ويسمح بدورة مغلقة لإعادة البناء من كود المصدر. تعمل مجموعة الأدوات على حل مشكلة تجميع المترجم الأولي الذي تم التحقق منه في التوزيعات، وكسر سلسلة إعادة البناء الدورية (يتطلب إنشاء مترجم ملفات قابلة للتنفيذ لمترجم تم إنشاؤه بالفعل، وتمثل تجميعات المترجم الثنائي مصدرًا محتملاً للإشارات المرجعية المخفية، مما لا يسمح بالضمان الكامل سلامة التجميعات من رموز المصدر المرجعية).

يقدم GNU Mes مترجمًا ذاتي الاستضافة للغة المخطط، مكتوبًا بلغة C، ومترجمًا بسيطًا للغة C (MesCC)، مكتوبًا بلغة المخطط. كلا المكونين قابلان للدمج. يتيح لك مترجم المخطط إنشاء مترجم MesCC C، والذي يسمح لك بعد ذلك ببناء نسخة مجردة من مترجم TinyCC (tcc)، والتي تعد إمكانياتها كافية بالفعل لبناء دول مجلس التعاون الخليجي.

مترجم لغة المخطط مضغوط تمامًا، ويستهلك حوالي 5000 سطر من التعليمات البرمجية في أبسط مجموعة فرعية من لغة C ويمكن تحويله إلى ملف قابل للتنفيذ باستخدام المترجم العالمي M2-Planet أو مترجم C بسيط تم تجميعه باستخدام hex0 المجمع ذاتيًا المجمع، الذي لا يتطلب تبعيات خارجية. وفي الوقت نفسه، يتضمن المترجم أداة تجميع البيانات المهملة كاملة ويوفر مكتبة من الوحدات النمطية القابلة للتحميل.

يتضمن الإصدار الجديد دعمًا لبنية ARM (armhf-linux وaarch-linux). تمت إضافة القدرة على استخدام Mes مع مجموعة مخفضة من ملفات التمهيد من مشروع GNU Guix (GNU Guix Reduced Binary Seed). تم تنفيذ الدعم لبناء مكتبة Mes وMes C باستخدام الإصدار 10.x من مجلس التعاون الخليجي. يقوم مترجم MesCC الآن بشحن مكتبة libmescc.a الخاصة به (-lmescc)، وعند الإنشاء باستخدام دول مجلس التعاون الخليجي، يتم الآن تحديد "-lgcc". تقديم الدعم لبناء MesCC باستخدام Guile 3.0.x.

المصدر: opennet.ru

إضافة تعليق