سؤال

كيف يمكنني تشغيل makefile مسبقًا من makefile.am؟

أنا جديد على نظام بناء Automake/AutoconF. تحتوي الحزمة التي أقوم بتطبيق Autotools على مكتبات زوجين واختبار كل منهما. بعض المكتبات هي رمز ASN1C الذي تم إنشاؤه تلقائيًا والذي يأتي مع Makefiles مسبقًا. لست متأكدًا من أفضل طريقة لقول داخل Makefile.am "قم ببناء مكتبة ASN1C مع Makefile المسبق".

إن محاولة البحث عن Google بشيء من هذا القبيل أمر صعب بعض الشيء بسبب وفرة وثائق Makefile.

شكرا ، تشينز

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

المحلول

هذا سهل نسبيًا للبناء الكامل ، ولكنه أصعب بكثير للبناء الإضافي.

ومن المهم أيضًا ما إذا كانت المكتبة تدعم بنيات خارج الشجرة.

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

تعيين دليل لبناء المكتبة. اكتب وضع قواعد لالتفاف عملية بناء المكتبة. اربط في إخراج بنية المكتبة كتبعيات للبناء الخاص بك.

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

التصميمات الإضافية أصعب بكثير ، لأنه يتعين عليك التقاط التبعيات المناسبة في لك اصنع القواعد ، لتغطية التبعيات من مكتبة Makefile.

نصائح أخرى

دليل Automake قسم عن هذا.

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