כיצד לבנות פרויקט לינוקס טיפוסי?
אם אתה משתמש בלינוקס, זה הגיוני מאוד להוריד ולהשתמש בתוכנות קוד חופשי ופתוח שונות. בעוד שלעתים קרובות תוכל להוריד ולהתקין סל"ד שונים, ישנם הרבה פרויקטים שאינם מספקים שום מתקין ידידותי למשתמש. בפרויקטים מסוימים אין אפילו את המהדורות המפורשות. מהצד השני, בנייה מהמקור עשויה לייצר יישום המותאם הרבה יותר טוב למעבד ולמערכת ההפעלה שלך. אין ספק, עליך להיות מסוגל גם לבנות פרויקט קוד פתוח / פתוח אם אתה רוצה לשלוט בו מספיק כדי להצטרף כמפתח מאוחר יותר. מאמר זה מסביר כיצד לבנות פרוייקט לינוקס טיפוסי ומנוהל נכון מקוד המקור.
- 1אם לפרויקט אין פרסומים מפורשים, ייתכן שיהיה עליך לשלוף את קוד המקור ישירות ממאגר ה- CVS או SVN שלו. באתרי האינטרנט של רוב הפרויקטים כאלה תהיה שורת הפקודה המתאימה שעליך להעתיק ולהדביק למערכת שלך, למשל cvs -z3 -d: pserver: anonymous@cvs.savannah.gnu.org: / sources / classpath co classpath. פקודה דומה בדרך כלל מורידה מספר רב של קבצי פרויקט בתיקיה נוכחית.
- 2בדוק את הקבצים README ו- INSTALL שאמורים להיות בתיקיה העליונה בפרויקט שהורדת. הם עשויים להכיל מידע רב ערך שיחסוך לכם זמן רב.
- 3פרויקטים מסוימים מספקים את סקריפט הבנייה כסקריפט מעטפת (נקרא בדרך כלל build.sh). זה לא תכוף במיוחד, אבל קורה בפרויקטים ישנים מאוד וגם בפרויקטים חדשים שמנסים לספק הליך בנייה "ידידותי למשתמש". אם אתה מוצא קובץ כזה, נסה להשתמש בו תחילה (ייתכן שההתקנה תמוקם בסקריפט נפרד שלרוב נקרא install.sh). אם אתה מוצא את התסריטים האלה, פשוט הפעל אותם. אחרת, המשך לשלבים הבאים.
- 4חפש את הקובץ שנקרא configure אשר גם חייב להיות קיים בתיקיה העליונה של הפרויקט. זה בדרך כלל סקריפט a.sh שיכוון את מערכת בניית הפרויקט למכונה שלך. אם אתה מוצא אותו, הקלד./configure או sh configure להפעלת סקריפט זה.. / configure בדרך כלל יש הרבה אפשרויות שעשויות לעזור אם הריצה "ברירת המחדל" נכשלת עם הודעות שגיאה. הפעל את הסקריפט בעזרת המקש - עזור לראות את האפשרויות. אם אין סקריפט תצורה, ייתכן שמדובר בפרויקט בסגנון ישן שמשתמש רק בקבצי יצירה, כך שתוכל להמשיך ישירות לשלב הבא.
- 5חפש את הקובץ שנקרא makefile שעשוי להיות בהתחלה או להופיע לאחר הפעלת התצורה. אם אתה מוצא אותו, הקלד את הפקודה make. עליו למצוא את קובץ ה- make בספרייה הנוכחית ולבנות עבורך את הפרויקט.
- 6אם אין להגדיר ולא makefile בעץ הפרויקט, זה עשוי להיות נמלה - פרויקט מופעל עם build.xml הקובץ במקום. במקרה זה, הקלד ant בתיקיית הבסיס של הפרויקט. בעוד שהיצור פופולרי יותר עבור פרויקטים של C ו- C ++, נמלים פופולריות עבור פרויקטים של Java.
- 7אם נמלה לא עובדת, או שהפרויקט הוא C או c ++, נסה לרוץ . /autogen.sh כדי ליצור את Configure ו makefile קבצים. זה משתמש ב- Autoconf, automake ו- libtool כדי ליצור קבצים אלה.
- 8לאחר שהצלחת להרכיב את הפרויקט מבוסס makefile, נסה לבצע התקנה כדי למקם את קבצי הפרויקט במיקומים מתאימים (להתקנת הפרויקט). מיקומי ברירת המחדל כמו / usr / lib או / usr / bin בדרך כלל ניתנים לכתיבת שורש בלבד, ולכן שלב זה בדרך כלל זקוק לזכויות מנהל.
- 9לאחר התקנת ההתקנה, נסה להקליד את שם הפרויקט הקצר. זה בדרך כלל קורא לתוכנית שזה עתה הורכבה והתקנה שמוכנה כעת לשימוש.
- אם המבנה נכשל, הדבק את הודעת השגיאה בגוגל או במנוע חיפוש אחר באינטרנט. לעתים קרובות תוכלו למצוא את התיאור של אותה בעיה יחד עם הסבר כיצד לפתור אותה.
- הסיבה התכופה היא היעדרות או גרסה שגויה של ספרייה נדרשת כלשהי. במקרה זה כל מה שאתה צריך זה למצוא ולבנות את הספרייה הזו שהיא בדרך כלל פרויקט דומה בפני עצמה.
- אם אתה עדיין לא מצליח להבין שזה משתבש, נסה לעדכן את כלי הבנייה שלך ואת C / C ++ / java או ספריות אחרות (תלוי בשפות התכנות המשמשות בפרויקט). בדרך כלל קל לעדכן כלים וספריות באמצעות מעדכן תוכנת המערכת.
- לאחר שניסית את השלבים הקודמים (אך אחרי, לא לפני כן), שלח שאלה לרשימת התפוצה של הפרויקט. ספר את כל מה שאתה חושב שעשוי להיות רלוונטי לגבי מערכת ההפעלה שלך, תאר את הבעיה בפרטים וכולל את כל הודעות השגיאה. האקרים צריכים להבין שעשיתם מספיק מהצד שלכם וממש מגיע להם קצת עזרה.
- אם הצלחת לבנות תוכנית מהמקור, השתמש בזה. נסו להבין כיצד התוכנית עובדת ולשפר אותה!
- לפעמים תוכניות אינן מתקבצות עם גרסאות המהדר העדכניות ביותר. במקרה זה תוכלו להשתמש בגרסה ישנה יותר, או לקבל חבילה בינארית מהאינטרנט או מחבר.
- מלכודת נפוצה אחת עבור מי שקופץ לסביבת לינוקס תהיה העתקת תיקיות המקור מ- Windows. במקרה זה, עשה יכול לתת שגיאות מוזרות בגלל הבדל בסופי השורה. נסה תמיד להשתמש במקור שהורד מהאתר המתאים עבור מערכת ההפעלה הספציפית.
- נסה תמיד לפתור את הבעיה בעצמך, חפש פיתרון באינטרנט ובדוק בארכיון רשימת התפוצה לפני ששאל שאלה כלשהי לרשימת התפוצה. אחרת אתה עשוי לקבל משהו כמו RTFM בתגובה שהוא די מתסכל ולא מועיל במיוחד.
- אם לפרויקט יש מהדורות רשמיות, נסה להשתמש בהם לפני שתשלוף את קוד המקור ממאגר המידע. גרסת המאגר עשויה להכיל באגים שהוצגו לאחרונה ולהיות מאוד לא יציבה.
- מן הצד השני, אם יש בעיה במהדורה הרשמית, בעיה זו עשויה כבר להיות מתוקנת ב- CVS / SVN ובמקרה כזה אולי כדאי לנסות את הגרסה החדשה ביותר.
- פרויקטים מסוימים עשויים להיות קשים מאוד לבנייה אם מערכת ההפעלה שלך ישנה והרבה ספריות מיושנות. במקרה כזה חשבו על מעבר להפצה אחרת של לינוקס שנמצאת בפיתוח פעיל ואמורה להיות בגירסאות העדכניות יותר של ספריות אלה.