פיתוח למוקו

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

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

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

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

הסיבה האמיתית שרציתי את המוקו היתה בשביל ללמוד לפתח דברים בתחום ה embedded ולראות אם אפשר להתאים אותם לעסק שלי, לא כתחרות לגלעד בן יוסף (codefidence) או שחר שמש (lingnu), אלא יותר לכיוון של "מוצר מדף" כלשהו. כיום אני יודע שזה לא ילך עם המוקו, אבל עדיין אני ממש אוהב את המכשיר.

אני אוהב אותו כל כך עד שהתחלתי להקדיש הרבה מהזמן החופשי (שכמעט ולא קיים לי) לנסות לפתוח בשביל המוקו דברים. אבל בשביל זה צריך כלי פיתוח נורמאליים נכון ? ובכן החלטתי לעבוד עם FPC (מן הסתם) ולנצל את לזרוס בשביל לבנות תוכנות גרפיות למוקו. אז התחלתי לגרום ל FPC לדבר ב ABI המתאים למוקו. זו היתה עבודה סיזיפית כי צריך להדר cross compile ל arm ולמצוא את הנוסחה המתאימה לכך כי יש יותר מידי משחקים בדרך.

בסוף מצאתי את הנוסחה (אם שמות ה cross compile של כלי ה gnu שלכם שונים ממה ש FPC מחפש, יש עוד טאגים שצריך להוסיף להגיד לו איך ומה לחפש בדיוק):

make OPT='-dFPC_ARMEL -Xd ' OS=TARGET=linux CPU_TARGET=arm

הבעיה עכשיו זה לגרום ל RTL לדבר ב ABI של libc שבשימוש shr (כרגע) כי משום מה הוא לא מדבר באותה שפה וה bootstrap של הRTL אינו מצליח לרוץ. וכאן אני תקוע, כי אני לא יודע אסמבלר של ARM ויותר מזה, אני מתקשה לדבג דברים (אם כי יש לי כוון מה לעשות בנושא), למרות שגלעד בן יוסף עזר לי הרבה ב linux-il וכיוון אותי לדיבוג טוב יותר.

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

3 מחשבות על “פיתוח למוקו

  1. פינגבק: חיוג מהיר ל OpenMoko חלק ראשון « לראות שונה

כתיבת תגובה

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

הלוגו של WordPress.com

אתה מגיב באמצעות חשבון WordPress.com שלך. לצאת מהמערכת / לשנות )

תמונת Twitter

אתה מגיב באמצעות חשבון Twitter שלך. לצאת מהמערכת / לשנות )

תמונת Facebook

אתה מגיב באמצעות חשבון Facebook שלך. לצאת מהמערכת / לשנות )

תמונת גוגל פלוס

אתה מגיב באמצעות חשבון Google+ שלך. לצאת מהמערכת / לשנות )

מתחבר ל-%s