16-05-2005, 20:47
|
|
|
חבר מתאריך: 20.12.01
הודעות: 20,962
|
|
זיו, אכזבת אותי...
תקפת אותי(גם אם בעדינות) בלי לבדוק...
לפני שנתייחס לעניין, נסביר מהו make בעולם היוניקס(בניגוד לקבצי MAK ושאר שטויות של MS):
כדי ליצור תוכנה שלמה מקוד המקור יש להדר את קבצי קוד המקור, להדר את כל המשאבים,
ולקשר אותם.(בגדול). כשעובדים בממשק שורת פקודה, קיימות שתי אופציות לבצע את התהליך
הנ"ל. הראשונה היא להקליד את כל הפקודות בזו אחר זו, והשניה היא לכתוב סקריפט שיבצע
את התהליך הנ"ל(מה שאפשרי בכל ממשק שורת פקודה שמכבד את עצמו, כלומר - כל ממשק
שורת פקודה, מלבד זה של MS).
במערכות יוניקס וחקייניות-יוניקס יש אופציה שלישית. במקום לכתוב "סתם" סקריפט, קיימת
תוכנה ייעודית שמבצעת סקריפטים בעלי תחביר מיוחד, שכל מטרתם היא ביצוע תהליכים כאלה.
במלים אחרות, זה פשוט עוד קיצור דרך. (שיכול להיות נוח מאוד ורב עצמה מאוד בתנאים
מסויימים וכשמשתמשים בו נכון, כמובן)
עכשיו נחזור לפקודה שהצעתי:
$ g++ /path/to/C/source/file
אתה טוען שזה לא יפעל, שצריך גם לקשר וכו' וכו'. הטענה שלך כמובן שגויה.
בוא נבדוק מה אומרים על כך K&R(ב-TCPL2ed):
הם אומרים שעל יוניקס יש לכתוב:
cc hello.c
כדי להדר את קובץ הדוגמה הראשון בספר, ויווצר executable בשם a.out שניתן להרצה
פשוט ע"י הקלדת שמו ואנטר...
gcc הוא פשוט cc של GNU ללינוקס(ומערכות אחרות, כמובן).
יכול להיות ש-K&R טועים, כמובן, אבל, עם כל הכבוד, בינתיים הם עשו עלי יותר רושם ממך...
אה, הזכרתי את העובדה שהפקודה הנ"ל פעלה לי על ג'נטו לינוקס באופן מושלם יותר מפעם?
|