לעשות - פיקוד לינוקס - פיקוד יוניקס

לעשות - גנו לעשות כלי כדי לשמור על קבוצות של תוכניות

תַקצִיר

לעשות [ -f makefile ] [אפשרות] ... היעד ...

אַזהָרָה

דף זה הוא תמצית של תיעוד של גנו לעשות. זה מתעדכן רק מדי פעם כי הפרויקט גנו אינו משתמש nroff. לקבלת תיעוד מלא, שוטף, עיין בקובץ המידע make.info אשר עשוי מקובץ המקור Texinfo make.texinfo .

תיאור

המטרה של כלי השירות היא לקבוע באופן אוטומטי אילו חתיכות של תוכנית גדולה צריך להיות recompiled ולהוציא את הפקודות כדי recompile אותם. המדריך מתאר את היישום של גנו, שנכתב על ידי ריצ'רד סטולמן ורולנד מקגראת. הדוגמאות שלנו מראות תוכניות C מאחר שהן הנפוצות ביותר, אבל אתה יכול להשתמש בכל שפה תכנות אשר מהדר יכול להיות מופעל עם הפקודה פגז. למעשה, להפוך לא מוגבל לתוכניות. אתה יכול להשתמש בו כדי לתאר כל משימה שבה כמה קבצים חייבים להיות מעודכנים באופן אוטומטי מאחרים בכל פעם אחרים לשנות.

כדי להכין להשתמש לעשות , עליך לכתוב קובץ שנקרא makefile המתאר את היחסים בין קבצים בתוכנית שלך, ואת המדינות פקודות לעדכון כל קובץ. בתוכנית, בדרך כלל קובץ ההפעלה מתעדכן מקבצי אובייקטים, אשר בתורה נעשה על ידי עריכת קבצי המקור.

לאחר makefile מתאים קיים, בכל פעם שאתה משנה כמה קבצי המקור, פקודה זו מעטפת פשוטה:

עשה

מספיק כדי לבצע את כל recompilations הדרושים. התוכנית לעשות שימוש בבסיס הנתונים makefile ואת זמני השינוי האחרון של הקבצים כדי להחליט איזה קבצים צריך להיות מעודכן. עבור כל אחד מהקבצים האלה, הוא מטפל בפקודות הרשומות במסד הנתונים.

לבצע פקודות ביצוע ב- makefile לעדכן שם יעד אחד או יותר, כאשר שם הוא בדרך כלל תוכנית. אם אין אפשרות, יש לבצע יחפש את makefiles GNUmakefile , makefile , Makefile , בסדר הזה.

בדרך כלל אתה צריך לקרוא makefile שלך ​​או makefile או Makefile . (אנו ממליצים Makefile כי זה נראה בולט ליד תחילת הרישום במדריך, ממש ליד קבצים חשובים אחרים כגון README ). השם הראשון שנבדק, GNUmakefile , אינו מומלץ עבור makefiles ביותר. אתה צריך להשתמש בשם זה אם יש לך makefile כי היא ספציפית גנו לעשות , ולא יהיה מובן על ידי גרסאות אחרות של לעשות . אם makefile הוא '-', הקלט הסטנדרטי נקרא.

הפוך עדכונים ליעד אם הוא תלוי בקבצים תנאי מוקדם ששונו מאז שהיעד השתנה לאחרונה, או אם היעד אינו קיים.

אפשרויות

-b

-M

אפשרויות אלה מתעלמות מתאימות לגרסאות אחרות של ביצוע .

אדוני

שנה לספרייה לפני קריאת makefiles או עושה משהו אחר. אם מרובות -C אפשרויות מוגדרים, כל מפורש ביחס הקודם: C / -C וכו 'שווה ל- C / וכו'. זה משמש בדרך כלל עם recocive invocations לעשות .

ד

הדפס מידע באגים בנוסף לעיבוד רגיל. המידע על איתור באגים קובע אילו קבצים נבחנים לצורך עיבוד מחדש, אילו קבצים נשמרים עם התוצאות, אילו קבצים למעשה צריכים להיות מחדש, אילו כללים משתמעים נחשבים ואשר מוחלים --- כל דבר מעניין לגבי האופן שבו מחליטים מה לעשות.

תנו משתנים שנלקחו מקדימות הסביבה על פני משתנים מ makefiles.

- קובץ

השתמש בקובץ כקובץ Makefile.

-אני

התעלם מכל השגיאות בפקודות שבוצעו כדי לשחזר קבצים.

- אני

מציין ספרייה דיר לחפש makefiles כלל. אם נעשה שימוש במספר אפשרויות - I כדי לציין מספר ספריות, החיפושים מתבצעים לפי הסדר שצוין. שלא כמו הוויכוחים לדגלים אחרים של ספריות, ספריות שניתן עם דגלי אני עשוי לבוא מיד אחרי הדגל: - אני דיר מותר, כמו גם - אני dir. תחביר זה מותר לתאימות עם דגל I של preprocessor.

ושינוי עבודות

מציין את מספר העבודות (פקודות) להפעלה בו-זמנית. אם יש יותר מאחד אופציה אחת, האחרון הוא יעיל. אם האפשרות -j ניתנת ללא ארגומנט, אל תגביל את מספר העבודות שיכולות לפעול בו-זמנית.

-k

המשך ככל האפשר לאחר שגיאה. בעוד היעד כי נכשל, ואת אלה תלויים בו, לא ניתן remade, התלות האחרות של מטרות אלה ניתן לעבד בכל זאת.

-L

- עומס

מציין שאין להתחיל עבודות חדשות (פקודות) אם קיימות עבודות אחרות וממוצע העומס הוא לפחות לטעון (מספר נקודה צפה). ללא ארגומנט, מסיר מגבלת טעינה קודמת.

-n

הדפס את הפקודות שיבוצעו, אך אל תבצע אותן.

קובץ

אל תערוך מחדש את קובץ הקובץ גם אם הוא ישן יותר מהתלות שלו, ואל תציג מחדש שום דבר בגלל שינויים בקובץ . בעיקרו של הקובץ הוא התייחס כמו ישן מאוד ואת הכללים שלה הם התעלם.

-p

הדפס את בסיס הנתונים (כללים וערכים משתנים) הנובעים מקריאת ה- makefiles; ולאחר מכן לבצע כרגיל או כמפורט אחרת. פעולה זו גם מדפיסה את פרטי הגירסה שניתנו על-ידי מתג -v (ראה להלן). כדי להדפיס את בסיס הנתונים מבלי לנסות ליצור מחדש קבצים, השתמש ב- make -p -f / dev / null.

-q

`מצב שאלה`. אל תפעיל פקודות כלשהן, או תדפיס דבר; פשוט להחזיר את מצב היציאה כי הוא אפס אם היעדים שצוין כבר מעודכן, nonzero אחרת.

-r

לחסל את השימוש הכלול המובנה הכללים. כמו כן, הסר את רשימת ברירת המחדל של הסיומות עבור כללי הסיומות.

- s

פעולה שקטה; אל תדפיס את הפקודות בעת ביצוען.

-S

בטל את ההשפעה של האפשרות -k . זה לעולם לא הכרחי אלא רקורסי לעשות איפה -K עשוי להיות בירושה מ ברמה העליונה לעשות דרך MAKEFLAGS או אם אתה מגדיר -k ב MAKEFLAGS בסביבה שלך.

-t

גע בקבצים (סמן אותם עד כה מבלי לשנות אותם) במקום להפעיל את הפקודות שלהם. זה משמש להעמיד פנים כי הפקודות נעשו, על מנת להטעות בעתיד invocations לעשות .

-v

הדפס את הגרסה של תוכנית Make בתוספת זכויות יוצרים, רשימה של מחברים והודעה כי אין אחריות.

-W

הדפס הודעה המכילה את ספריית העבודה לפני ואחרי עיבוד אחר. זה עשוי להיות שימושי עבור מעקב אחר שגיאות מתוך קנים מסובכים של פקודות להפוך רקורסיבית.

-W קובץ

תעריכו שקובץ היעד שונה. כאשר נעשה שימוש עם דגל n , זה מראה לך מה יקרה אם היית לשנות את הקובץ. ללא -n , זה כמעט אותו דבר כמו הפעלת פקודת מגע על הקובץ הנתון לפני הפעלת, למעט זמן שינוי משתנה רק בדמיון של לעשות .