سؤال

هل هذا ممكن ، نظرًا لأن Apple تفتح الرمز (libdispatch؟) أنا في حيرة من أمري حول كيف يمكن للمرء الاستفادة من هذا. هل هذا مثل مكتبة مع واجهة برمجة تطبيقات يمكن لأي تطبيق الاستفادة من ، أو ميزة نظام التشغيل المدمجة في Mac OS X؟ هل يمكن للتطبيق مصمم "لـ" Macs و iPhone (مع iOS 4) وحده الاستفادة من هذه المكتبة؟

أفترض أن على المرء تشغيل منفذ لصنعه gcc متوافق أيضًا مع الدلالي الجديدة التي قدمتها Apple.

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

المحلول

بعد قراءة نظرة عامة على ARS Technica, ، يبدو أن هناك العديد من التحديات

  • تستخدم GCD كتل واسعة (امتداد Apple إلى C يقارب الإغلاق) مما يعني أن المترجم الخاص بك يحتاج إلى دعم الكتل. لا يتمتع الإصدار القياسي من GCC بالدعم للكتل ، لذلك سيتعين عليك إما تنفيذ تغييرات Apple على Linux GCC أو استخدام Clang/LLVM.
  • يتضمن إصدار Mac OS X من GCD بعض التعليمات البرمجية في kernel. من الواضح ، إذا كانت هناك حاجة إلى تغييرات kernel في Linux لدعم GCD ، فهذا عمل رئيسي. ومع ذلك ، يبدو أن منفذ مساحة المستخدم ممكن فقط.
  • GCD مرخصة بموجب ترخيص Apache. على ما يبدو ، هذا الترخيص غير متوافق مع GPL V2. لذلك لا يمكنك استخدام GCD في أي تطبيق موزع تحت GPL V2. GPL V3 على ما يرام ، لذا فإن التطبيق المرخص بموجب GPL V2 "أو الأحدث" على ما يرام.

بعد قول كل ذلك ، ميناء FreeBSD تم القيام به ، لذلك يجب أن يكون ممكنا.

نصائح أخرى

بعد عام تقريبًا لكني استخدامه بسعادة تامة على أوبونتو ناتي. الحزم المناسبة قادمة في oneiric.

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