سؤال

لقد استعملت كلينت هاريس التعليمي لإعداد قانون تقاسم بين المشاريع و كل شيء يعمل كما هو متوقع على جهاز الكمبيوتر.ولكن على زميلتي آلة, يبدو أن المترجم لم يجد ملف الرأس من مكتبة ثابتة المشروع عندما كان يبني.

لي زميل في العمل لدي مشروع استنساخ git.ونحن قد ذهبت من خلال جميع الجهات بناء أعلام كسكودي إعدادات n مرات ، ولكن المشروع ببساطة يرفض تجميع على الجهاز.

هذا هو ما سألت لي زميل في العمل للقيام به ، معظمها نسخ و لصق من البرنامج التعليمي:

  1. تأكد من عدم وجود مساحة فارغة في المسار الكامل إلى المشاريع الدليل.
  2. داخل المشاريع دليل إنشاء مجلد آخر يسمى "build_output".
  3. في كسكودي, تحت عنوان "كسكودي > تفضيلات" اختيار "بناء" و مجموعة "مكان بناء المشاريع في" إلى "تخصيص موقع" تحديد مسار مشترك بناء الدليل الذي قمت بإنشائه.
  4. مجموعة "مكان الملفات بناء المتوسطة في" أن "مع بناء المنتجات."
  5. اختيار "مصدر الأشجار" علامة التبويب إنشاء مصدر جديد شجرة متغير من خلال النقر على زر "+" و ملء الأعمدة.في كل من "وضع اسم" و "اسم العرض" ، ووضع [اسم المشروع المشترك الذي أنشأ مكتبة ثابتة].في الطريق كنت وضعت المسار الكامل إلى المجلد الإطار.

بعد هذه الخطوات المشروع الذي يستخدم مكتبة ثابتة أن تضع نفسها على الجهاز كما في الأعمال المتعلقة بالألغام.لكنه لا.في الأساس خطأ يحصل هو:

error: TheFrameworkHeader.h: No such file or directory

ثم سلسلة أخرى من الأخطاء الناجمة عن المفقودين رأس.

أي استراتيجيات المتاعب اطلاق النار هذا ؟ أو أي شخص لديه تجربة مماثلة و يمكن مشاركة بعض الأنفس المعرفة ؟ هو أي شيء مفقود من تعليمات لقد لخصت?هل أنا بحاجة إلى تعيين أدوار رؤوس في نسخة رؤوس بناء المرحلة عند ترجمة ثابت المكتبة ؟

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

المحلول

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

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

إذا كان أي شخص لديه أي فكرة عن هذا, الرجاء نشر إجابة!

تحرير:منذ أن نشر هذا نفس المشكلة حدثت مع مشروع آخر, ومرة أخرى, مجرد إعادة تسمية المجلد الذي يحتوي على .xcodeproject مجلد إصلاح المشكلة.

نصائح أخرى

لا أعتقد أنه جيت، وأعتقد أنه Xcode. حصلت على مشكلة مماثلة للغاية هنا، حيث يحل Xcode / Xcodebuild مسار تشمل زورا (مما يجعله بسيطا.) مع نفس مشروع المكتبة بنفس ملفات المكتبة وملفات XCConfig (Clean Checkout من SVN Repo) ولكن مجلد يحتوي على آخر - يعمل. لذلك، thanx للحل ولا يلوم git بعد الآن ؛-)

كثيرا ما أنسى التحقق من ذلك: هل أنت متأكد من أن الملف المفقود (أي theframeworkheader.h "هو في مستودع git؟ قد يكون جيدا إعدادات البناء الخاصة بك صحيحة، ولكن الملف بطريقة ما لم يضاف إلى git بشكل صحيح.

إذا كنت تواجه مشكلة في بناء جهاز معين، فمن المحتمل أن تكون المشكلة جهازا أو إعداد مستخدم. مثل an. متغيرات البيئة (ربما تشمل_Path أو أحد أقاربها - يستخدم XCODE دول مجلس التعاون الخليجي). قد يكون لديك "." في أحد هذه المتغيرات.

أفضل طريقة لإصلاح هذا ستكون لإضافة مسار المجلد المطلوب إلى رمز التبديل الخاص بي في البرنامج النصي للبناء.

تحقق مضاعفة من أن "مسارات البحث-> مسارات البحث عن رأس المستخدم" (لجميع التكوينات) يشير إلى الدليل الذي يحتوي على مشروع Xcode المشترك (يمكنك استخدام متغير شجرة المصدر الجديد الذي قمت بإنشائه).

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