====שימוש בסיסי ב gdb==== ===מטרת המדריך=== מטרת מדריך זה להשלים את הפער בין החומר התאורטי הנלמד בכתה או מספר לימוד, לבין העבודה המעשית על המערכת. ===למי מיועד המדריך=== המדריך מיועד לתלמידים המתחילים את הלימוד התאורטי של שפת C, וזקוקים להדרכה כיצד לכתוב ולהדר את התכניות הראשונות שלהם במערכת GNU/Linux. ===על איזו מערכת נבנה המדריך=== המדריך נבנה על מערכת Ubuntu GNU/Linux אך כל מערכת לינוקס תתאים. הוראות ההתקנה המדוייקות ספציפיות למערכת מבוססת Debian GNU/Linux, אך ינתנו הסברים כלליים גם עבור מערכות אחרות. ===לפני תחילת העבודה=== עברו על המדריך לכתיבת תכנית בשפת C ובשימוש במהדר gcc ובדקו שאתם שולטים בכתיבה, הידור והרצה של תכניות C פשוטות: * [[כתיבת תכנית ב C]] * [[שימוש בסיסי ב gcc]] ===הידור בעזרת gcc=== כמו שראינו במדריך לשימוש ב gcc, ניתן להשתמש בדגל Wall- כדי לבקש מהמהדר לזהות יותר שגיאות בקוד. אך יש שגיאות שלא ניתן לזהות במהלך הידור התכנית, צריך לחפש אותן במהלך הריצה. תכנת gdb מאפשרת להריץ את קובץ ההרצה שיצרנו בתוך עטיפה המאפשרת לעצור את התכנית מידי פעם ולשאול שאלות (ואף לשנות) לגבי ערכי משתנים, ומצב המערכת בזמן ריצת התכנית. מטרת המעטפת לעזור למשתמש לזהות מצבים הנוצרים במהלך ריצת התכנית ואינם מתוכננים מראש. כדי להפיק את המירב מתהליך הדיבוג צריך להשאיר בקובץ ההרצה סימנים ל gdb שיעזרו לו לתת מידע רב ככל האפשר על התכנית בזמן הריצה. אנו נבקש מהמהדר בו נשתמש gcc / g++ / as להשאיר סמנים אלו בקובץ ההרצה ע"י הדגל -g gcc -g -Wall hello.c -o hello ===gdb=== הרצת gdb עבור קובץ ההרצה hello שיצרנו בפקודה למעלה. gdb hello לאחר הרצת gdb הדיבגר יחכה להוראות, אפשר ללמוד על ההוראות האפשריות ע"י הפקודה help או