עבור לתוכן

יצירת Makefile, קבצי הרצה, וקבצי קלט פלט

Featured Replies

פורסם

כתבתי תוכנית ב-C והעברתי אותה ל-knoppix לתוך ספריה.

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

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

אני יודע שאת העבודה הקשה של לכתוב את התוכנית עשיתי, אבל אין לי מושג איך לעשות את הדבר הטכני והמעצבן הזה שגוזל לי כרגע הכי הרבה זמן... :'(

אשמח לעזרה..

תודה

פורסם

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

http://www.cs.tau.ac.il/~roded/courses/softp-b06/Makefile.ppt

אם זה עדיין לא ברור אז תחזור.

אגב, ה-makefile יכול להיות באיזה שם שאתה רוצה, אבל נהוג לקרוא לו פשוט "makefile" (ואז לא צריך לציין את השם כשמריצים את make).

קבצי o. זה לא קבצי הרצה, אלא תוצרי ביניים של הקומפילציה.

קבצי קלט ופלט: כשאתה מריץ את התכנית שלך סתם ככה, אז היא מקבלת את כל הקלט הסטנדרטי שלה (שמגיע מפונקציות כמו scanf ו-getchar) מהמקלדת, ואת הפלט הסטנדרטי (שמגיע מפונקציות כמו printf ו-putchar) היא מדפיסה למסך.

אתה יכול לומר לתכנית לעבוד עם קבצים במקום הפלט והקלט הסטנדרטיים:

./myprogram < in.txt > out.txt

זה אומר שהתוכנה myprogram תרוץ עם in.txt בתור הקלט ו-out.txt בתור הפלט (שום דבר לא יודפס למסך, אלא רק לקובץ הזה). בתוך in.txt אתה צריך לכתוב את מה שהיית רוצה להזין לתכנית באמצעות המקלדת.

כמובן, אפשר להריץ את התכנית ככה:

./myprogram < in.txt

ואז יהיה לה קלט מקובץ ופלט למסך, או ככה:

./myprogram > out.txt

ואז יהיה לה קלט מהמקלדת ופלט לקובץ.

פורסם
  • מחבר

המצגת לא ממש ברורה.

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

בעיקרון זה לא אמור להיות מסובך רק שאני לא מצליח למצוא מדריך טוב ופשוט... :nixweiss:

פורסם

חיפוש בגוגל של "makefile tutorial" או "מדריך makefile" יניב לך עשרות תוצאות.

פורסם

יש ל-gnu make מדריך מפורט, ובסוף שלו יש דוגמא של makefile.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים