GoGPT Best VPN GoSearch

OnWorks فافيكون

makepp_faq - عبر الإنترنت في السحابة

قم بتشغيل makepp_faq في مزود استضافة OnWorks المجاني عبر Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

هذا هو الأمر makepp_faq الذي يمكن تشغيله في مزود الاستضافة المجانية OnWorks باستخدام إحدى محطات العمل المجانية المتعددة على الإنترنت مثل Ubuntu Online أو Fedora Online أو محاكي Windows عبر الإنترنت أو محاكي MAC OS عبر الإنترنت

برنامج:

اسم


makepp_faq - الأسئلة المتداولة حول makepp

الوصف


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

الحصول على بدأت
في إلى تحميل؟

يتم استضافة Makepp على SourceForge ويمكن تنزيلها ككود تار للشفرة المصدرية أو بصيغة
حزمة التثبيت لدبيان . DEB على أساس لينكس أو . دورة في الدقيقة على أساس لينكس من
http://sourceforge.net/projects/makepp/files/

مثل الكثير من برامج Perl ، يمكن أيضًا تنزيل makepp من CPAN بالنقر فوق
رابط التحميل على http://search.cpan.org/dist/makepp/

Makepp هو جزء من Debian GNU / Linux غير المستقر والاختبار. هذا يعني أنه يمكنك تثبيته
مباشرة عبر "apt-get install makepp" أو باختياره من أداة الحزمة المفضلة لديك
مثل متشابك.

Makepp هو جزء من archlinux و Gentoo Linux. لاحظ أن اللواحق الخاصة بالتوزيع مثل
2.0-1 أو 2.0-r1 ليس الإصدار 1 المرشح ، ولكن الإصدار النهائي 2.0.

يستطيع I محاولة it بدون التثبيت؟

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

perl / where / you / unpacked / it / makepp

كيفية إلى اختر بيرل الإصدار؟

يجب أن يكون لديك Perl 5.8 أو أحدث في مكان ما على نظامك. افتراضيا جميع إلغاء التثبيت
ستستخدم البرامج النصية "perl" في مسارك. ولكن يمكنك تشغيلها بنسخة صريحة
بيرل. سيعمل عداء الاختبار والتثبيت على تشغيل كل شيء بنفس هذه الحالة.

/ path / to / perl / where / you / unpacked / it / makepp

في حالة عدم تعرف بعض البرامج النصية بشكل صحيح على "perl" التي يتم تشغيلها معها ، يمكنك ذلك
ساعده بإخباره بالمسار إلى نفس مثيل perl عبر متغير "PERL":

PERL = / path / to / perl / path / to / perl / where / you / unpacked / it / makepp

يمكن أن يكون هذا أيضًا مثالًا يتم البحث عنه في مسارك ، إذا لم يكن يحتوي على ملف
فاصل الدليل:

PERL = perl5.16.2 perl5.16.2 / where / you / unpacked / it / makepp

كيفية إلى تثبيت؟

هناك طريقتان للتثبيت تؤديان إلى نفس النتيجة:

تكوين (الاسم المستعار config.pl)
هذا يسمح بتثبيت النمط التقليدي:

./configure && قم بإجراء الاختبار والتثبيت

الاختلاف الوحيد بين هذين الأمرين هو أن "التهيئة" ليست نص برل ، لذا أنت
لا يمكنك قول "perl configuration" ، بينما يمكنك استخدام جميع المتغيرات المذكورة أعلاه مثل "perl
config.pl ". الخيارات الصالحة هي:

-ب ، - بندير =/ المسار / إلى / التثبيت / بن
أين تذهب الثنائيات (الافتراضي: بادئة/ بن). ثنائيات Makepp هي مجرد لغة Perl
البرامج النصية بحيث تكون معمارية مستقلة. إذا أعطيت هذا الخيار ، لكن لا
"--prefix" ، سيتم نزعها / بن لاستنتاج أ بادئة للقيم الافتراضية الأخرى.

- د ، - داتادير =/ المسار / إلى / التثبيت / المشاركة / makepp
مكان تثبيت ملفات مكتبة makepp (افتراضي: بادئة/ حصة / makepp).

-f، --findbin =نسبي / مسار / إلى / داتادير / من / بندير
أين تجد المكتبات ذات الصلة بالملفات التنفيذية ، أو "لا شيء" (الافتراضي) للعثور عليه
لهم في DATADIR.

-h، --htmldir =/ المسار / إلى / التثبيت / المشاركة / html
أين تذهب وثائق HTML (الافتراضي: بادئة/ doc / makepp إذا بادئة/ دوك
موجود وإلا DATADIR/ html) ، أو "لا شيء" إذا كنت لا تريد تثبيته.

م ، - ماندير = /المسار / إلى / الرجل
أين يجب أن توجد صفحات الدليل (الافتراضي: بادئة/ حصة / رجل إذا كان موجودا ، وإلا
بادئة/ man) ، أو "none" إذا كنت لا تريد تثبيتها.

- Makefile =/ المسار / إلى / Makefile
حدد الموقع حيث يمكنك كتابة Makefile (الافتراضي:.). على عكس الآخر
الخيارات ، التي يتم تذكرها لخطوة التثبيت التالية ، يتم إنشاء هذا الملف
على الفور.

-p ، --prefix =/ المسار / إلى / التثبيت
حدد الموقع الذي تريد تثبيت كل شيء فيه (افتراضي: / البيرة / المحلية). الجميع
المسارات الأخرى بشكل افتراضي مرتبطة بهذا المسار.

-V
--الإصدار
اطبع رقم الإصدار.

إذا كنت ترغب في القيام بتثبيت نموذج بالحجم الطبيعي لبعض destdir لتغليف بنفسك
التوزيع ، يمكنك إعطاء معلمة إضافية للأمر الأخير:

جعل DESTDIR = / مؤقت / تثبيت destdir

install.pl
هذه هي الواجهة الخلفية التي تقوم بالتثبيت الفعلي. يمكنك الاتصال به مباشرة:

./install.pl bindir datadir mandir htmldir findbin destdir

المعلمات اختيارية وتتوافق مع الخيارات من القسم السابق.
تتم مطالبتك بأولئك الذين لا توفرهم ، باستثناء الأخير ، وهو ليس كذلك
عادة المطلوبة.

Makefile.PL
الملف المعتاد Makefile.PL موجود حاليًا لأسباب فنية فقط. هو - هي
سوف ليست تساعدك على التثبيت. لذلك ، للأسف ، لا يمكنك استخدام أدوات مثل "cpanm"
تثبيت دفعة واحدة.

في بعض الأنظمة ، أيًا كان "perl" الذي ينتهي بك الاتصال به ، قد يكون ارتباطًا رمزيًا ببعض الدقة
الإصدار "perl5.mn". في هذه الحالة يرى بيرل ذلك فقط ، وبالتالي سوف يستخدمه ل
تثبيت ضد. إذا كنت لا تريد ذلك ، فاستخدم متغير "PERL" كما هو موضح أعلاه. لو
تقوم بتثبيته بالمتغير الثاني ، أي فقط اسم الملف القابل للتنفيذ بدون خطوط مائلة ،
ستبحث البرامج النصية المثبتة دائمًا عن ذلك عبر "/ البيرة / بن / إنف". هذا يجعلها
أبطأ قليلاً في البدء ، لمزيد من المرونة.

لماذا هل التركيب قول إذن رفض؟

إذا كنت تريد التثبيت على دليل نظام مثل / البيرة, / البيرة / المحلية or / الأراضي الفلسطينية المحتلة، تستطيع فقط
افعل ذلك إذا قمت بتشغيل التثبيت كجذر للمستخدم. في العديد من الوحدات يمكنك تشغيل الأمر كملف
الجذر ، عن طريق إضافة "sudo" إليه ، واعتمادًا على النظام الذي يدخل إما الجذر
كلمة المرور ، أو الخاصة بك ، كما هو مطلوب.

هذا ليس ضروريا لخطوة "التكوين" أو "config.pl" التحضيرية التي فقط
يكتب أ ماكيفيلي في الدليل الحالي.

البناء الأسئلة المتكررة
ابحث عن . غير مهم أهداف؟

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

لماذا هل it يجري حكم 3 مرات؟

ليس لدى جعل جنو قواعد أهداف متعددة بأسلوب makepp. بدلا من ذلك يفسر هذا على أنه اختصار
لثلاث قواعد منفصلة:

abc:
صدى $ @
المس اي بي سي

ومع ذلك ، فإنه لا يتحقق من سبب وجود الملف. إذا كان الملف موجودًا (وهو أحدث من أي ملف
التبعيات) إنه سعيد. أيًا من الملفات الثلاثة التي تم إنشاؤها أولاً ، يوفر ملف
الاثنان الآخران ، لذلك يتصرف هذا إلى حد ما مثل قاعدة متعددة العناصر - ولكن يمكن أن يسبب العرق
الظروف بالتوازي يبني.

قد تكون قاعدة مماثلة:

abc:
المس $ @

يقوم Gmake بالفعل بتشغيل هذا مرة واحدة لكل ملف مطلوب. دون معرفة ما يفعله الأمر
(قد يكون برنامج نصي يقوم بإنشاء بعض الملفات داخليًا) ، لا يمكن أن تكون الحالتان بسهولة
قال بصرف النظر عن طريق makepp.

لذلك ، كإجراء احتياطي خاص للتوافق ، إذا ذكر إجراء متعدد الأهداف قديمًا فقط
style $ @ وليس النمط الجديد "$ (output)" ولا "$ (target)" ولا صيغ الجمع ، فهو كذلك
تعامل كقواعد منفصلة. هذا يعني مع ذلك تشغيله بشكل متكرر ، كما يتجاهل makepp
تظهر بشكل عشوائي والتي لا تحتوي على بيانات وصفية لها.

لماذا هل it ويشكو أن a خلق ملف is زائف؟

إذا كان لديك أمر يستمر في العمل بشكل غير متزامن ، بعد عودته بملحق
نجاح الإرجاع ، ستلاحظ makepp أن الملف الموعود مفقود ويشتكي. هذا
يمكن أن يحدث أيضًا عادةً على بعض أنظمة ملفات الشبكة ، والتي قد تكتب فعليًا فقط
بعد عدة ثوان.

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

لماذا هل it إعادة ملفات بلا داعى؟

لقد لاحظت هذا على NFS ، حيث بسبب التخزين المؤقت لسمة الملف ، فإن الطابع الزمني لملف
لم يكن الملف الذي تم إنتاجه هو نفسه الذي كان يمتلكه أخيرًا. على المدى التالي لاحظت makepp
الاختلاف واعتبر الملف تم تعديله بشكل غير ملائم. تم حل هذا مع خيار التثبيت
من "acregmin = 0" ، مما يجعل السمات مرئية على الفور.

يمكن أن يحدث هذا أيضًا مع المستودعات ، على سبيل المثال إذا قام شخص آخر ببناء المستودع
باستخدام "umask 066" أو باستخدام مترجم يمنع الآخرين من قراءة الملف الناتج.
سيحدث هذا أيضًا إذا كان المستودع أو شجرة البناء الخاصة بك تشترك في مسار مشترك
بادئة مع بعض التبعيات (على سبيل المثال / opt / repository و / اختيار / Someool، في أي حالة
سيتذكر makepp المسار مرة واحدة على أنه نسبي ، ومرة ​​واحدة مطلقة ، يبدو وكأنه تغير
التبعيات.

لا القادم C مصدر ملف or القادم موضوع ملف تعتمد on رؤوس؟

هذا يعتمد على وجهة نظرك. إذا تغير نموذج أولي في رأس ، فقد يكون لدى المبرمج
لتكييف شفرة المصدر. لذلك من وجهة النظر هذه هناك تبعية.

لكن بالنسبة للبناء ، هذا غير ذي صلة على الإطلاق. هنا المخرجات تعتمد على المدخلات.
إذا تغير ملف الرأس ، فقد يؤثر ذلك على ملف الكائن (على سبيل المثال ، إضافة المعلمات مع
القيم الافتراضية ، التي قد يتجاهلها المبرمج ، ولكن ليس المترجم). لذلك من makepp ل
وجهة نظر فقط ملف الكائن الناتج يعتمد على الترويسات ، أي يجب إعادة بنائها متى
هذه التغييرات.

منوع
لماذا هل com.makepp انتقائي بكشف أو التبعيات؟

في هذه القاعدة لماذا يصنع makepp الناتج تعتمد على المدخلات 1، ولكن ليس في المدخلات 2?

انتاج:
زكات انتاج
zcat input2 >> الإخراج

هناك ثلاثة مستويات للمسح. الأول هو lexer ، الذي يحاول فهم
جزء شل من الإعدام. أي الأوامر التي يتم استدعاؤها وما هي عمليات إعادة توجيه الإدخال / الإخراج
تجري. هذه الملاحظات المدخلات 1 و الناتج (حتى لو لم يتم الإعلان عنها كهدف لـ
هذه القاعدة).

الخطوة التالية هي موزعي الأوامر. يحتوي Makepp على عدد قليل من أوامر التجميع النموذجية.
هذه تحقق من خيارات سطر الأوامر لفهم ما سيفعله الأمر. في ال
عملية تلتقط التبعيات مثل المكتبات ("cc -llib") ، وتشمل المسارات ("cc -Idir")
وملفات الإدخال. تتمثل مهمة المحلل اللغوي "zcat" في معرفة أن "-S" تستغرق
وسيطة ، ولكن كل الكلمات الأخرى غير الاختيارية هي أسماء ملفات (يتم إلحاقها اختياريًا بـ .gz)، و
أن "-" تنتهي الخيارات. للأسف لا يوجد مثل هذا المحلل اللغوي ، ليس أكثر من مئات الآخرين
أوامر.

الخطوة الثالثة لبعض اللغات هي فحص ملفات الإدخال ، للكشف عن الملفات المتضمنة كـ
مزيد من التبعيات. هذا لا ينطبق على هذا المثال.

كيفية يمكن I تصحيح makepp؟

يمكنك وضع "$ (print)" حول تعبير مريب. هذا يعيد دون تغيير
التعبير ، أثناء طباعته كأثر جانبي.

يمكنك تفريغ الدليل الحالي (الضرب بعد "-C" إذا كنت تريد) makefile بامتداد
الخيار "--dump-makefile = file" لمعرفة كيف يراه makepp.

يكتب Makepp سجلًا لكل ما يفعله ولماذا. يمكنك النظر إلى ذلك باستخدام makepplog ،
mppl أو makeppgraph ، mppg. يمكنك جعله أكثر إسهابًا من خلال ضبط البيئة
متغير "MAKEPP_DEBUG".

يسجل Makepp كل ما يعرفه عن الملف ، لإعادة استخدامه في الجولة التالية. على الرغم من أن الأمر يتطلب بعضًا
فهم العناصر الداخلية لـ makepp ، وإغراقها بـ makeppinfo ، و mppi لواحد أو أكثر
عادةً ما تعطي فكرة عن الخطأ. يوفر "MAKEPP_DEBUG" بالإضافة إلى ذلك
"RULE_SOURCE".

إذا كنت تشعر بالمغامرة ، فاستخدم makepp من السير الذاتية. وهذا يشمل وحدات إضافية
ربط في "perl -d" لعرض الداخلية لـ makepp بشكل أفضل.

Is it خزنة إلى استعمال؟

نعم، ستفعل بالضبط ما يقوله makefiles الخاص بك (والذي يجد العديد من المبرمجين صعوبة في ذلك
فهم ، نظرًا لأن الاستدلال المستند إلى القواعد يختلف كثيرًا عن معظم نماذج البرمجة).

و لا، إذا كنت لا تثق في ملفات makefiles التي حصلت عليها ، بالتأكيد لا! makefile هو مضحك
نوع البرنامج النصي ، والغرض منه هو تشغيل الأوامر التي من المتوقع أن تقوم بتعديل ملف
نظام الملفات. ليس لدى Makepp أي وسيلة للتحقق من الضرر الذي سيفعلونه.

والأسوأ من ذلك ، أن هناك صيغ التنفيذ دائمًا ، والتي يتم إجراؤها حتى مع "--dry-run" (أي
لا يدير القواعد ، ولكنه يقيّم كل شيء آخر). قد يكون هذا شيء مثل
هذه:

bad_boy: = $ (شل rm *)

خارجي أدوات
يستطيع I تستخدم cc -M or دول مجلس التعاون الخليجي -مم؟

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

ومع ذلك ، يمكن لبعض المجمعين إنتاج هذا كمنتج ثانوي. إذا كنت تفضل استخدام هذا
انظر: تشمل.

يستطيع I تستخدم CCache ، كومبيليركاش or cachecc1؟

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

لاحظ أن وضع ذاكرة التخزين المؤقت المباشر به خطأ https://bugzilla.samba.org/show_bug.cgi؟id=8728
التي ستتجاهل التغيير في تضمين المسارات. هذا يجعل t / makeppreplay.test تفشل مع
"ملف خاطئ: إخراج". قم بتصدير "CCACHE_NODIRECT = 1" لتجنب ذلك.

استخدم makepp_faq عبر الإنترنت باستخدام خدمات onworks.net


خوادم ومحطات عمل مجانية

قم بتنزيل تطبيقات Windows و Linux

أوامر لينكس

Ad




×
الإعلانات
❤️تسوق أو احجز أو اشترِ هنا - بدون تكلفة، مما يساعد على إبقاء الخدمات مجانية.