لماذا لم يتم تثبيت مجمعات سلسلة GCC 4.xx بواسطة MINGW افتراضيًا؟

StackOverflow https://stackoverflow.com/questions/1568949

  •  21-09-2019
  •  | 
  •  

سؤال

حالياً، Mingw'S يثبت فقط سلسلة 3.xx من برنامج التحويل البرمجي GCC افتراضيًا. ومع ذلك ، يبدو أن سلسلة المترجمين 4.xx قد خرجت لبعض الوقت ، وكما ذكر آخرون, ، يبدو انه يعمل بشكل جيد. هل هناك أي سبب لعدم انتقاله إلى إصدارات 4.xx حتى الآن ، وأي سبب لعدم استخدام الإصدارات الأحدث من GCC؟

هل كانت مفيدة؟

المحلول

لقد تغير C ++ ABI من GCC4 من GCC3 ، ويتضمن الكثير من الميزات الجديدة (مثل عودة الأشجار) التي ما زال الكثير من الناس يعتبرون "تجريبيًا". لا تزال هناك بعض توزيعات Linux التي لا تزال تستخدم GCC3 لهذا السبب.

نصائح أخرى

ال TDM GCC/MINGW32 يبني يشمل المثبت GCC 4.4.x وجميع الحزم الثنائية الأساسية المطلوبة لتطوير Windows الأساسي ، بما في ذلك GDB. يستخدم على نطاق واسع دون أي مشاكل غير عادية.

يبدو أن المشكلة هي أنهم غيروا آلية التعامل مع الاستثناء بطريقة تكسر ABI. هذا يعني أنه لا يمكنك (على سبيل المثال) إسقاط المترجم الجديد والاستمرار في استخدام ملفات الكائنات القديمة و/أو المكتبات. يجب عليك إعادة توحيد كل شيء من التعليمات البرمجية المصدر إلى الحصول على نتائج عمل على الإطلاق.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top