ארגז הכלים הראשי הנתמך לבניית OpenWeave הוא GNU Autotools.
דרישות המערכת
כל פלטפורמות ה-OS העיקריות תומכות בהכנה וביצירה של אוסף OpenWeave. ערכות הכלים הרשומות נבדקו באופן רשמי על ידי Nest.
Linux | ||||||
---|---|---|---|---|---|---|
דרישות: Ubuntu 14.04 (Trusty) נתמך באופן רשמי, אבל כל מערכת דומה המבוססת על Linux אמורה לפעול. | ||||||
C/C++, Java, Python |
|
|||||
C/C++, איגודי Java |
|
Mac OS X | ||||||
---|---|---|---|---|---|---|
דרישות: XQuartz לשכפול עץ משנה אחד לספרייה אחרת עם קישורים סימבוליים. | ||||||
C/C++, קשרים לקקאו |
|
|||||
C/C++, Python |
|
חלונות | ||||||
---|---|---|---|---|---|---|
דרישות: Cygwin לתמיכה בשורת הפקודה של Linux. | ||||||
שדות C/C++ |
|
מוטמע | ||||||
---|---|---|---|---|---|---|
שדות C/C++ |
|
דרישות מוקדמות
בנוסף לארגז כלים נתמך, מומלץ להתקין את החבילות והכלים הבאים לפני הבנייה של OpenWeave.
חבילות
Linux:
sudo apt-get install python-pip python-setuptools bridge-utils /
libglib2.0-dev libdbus-1-dev libudev-dev /
libical-dev libreadline-dev
Linux ו-Mac OS X:
pip install --user google-cloud googleapis-common-protos grpc protobuf pycryptodomex
sudo cpan -i Text::Template
כלי רכב של GNU
OpenWeave תלוי בכלי הרכב של GNU עבור מערכת ה-build שלו. גרסה של GNU כלי רכב חייבים להיות זמינים כדי לפתח בהצלחה את OpenWeave. כדי להשתמש בגרסה האוטומטיה של המערכת של Linux ב-Linux:
sudo apt-get install libtool autoconf automake
עבור המערכות שבהן ה-GNU Autotools אינו זמין או ניתן להתקנה (לדוגמה, Mac OS) או במערכות שבהן הגרסה שסופקה על ידי המערכת לא יוצרת גרסת build קשיחה מחוץ לאריזה, מערכת Nest Labs יצרה מסגרת מותאמת אישית ובנייתית, המבוססת על GNU Autotools. המערכת מצמידה את קבוצת התוכניות המשמשות ליצירת גרסאות טובות של גרסאות. הצמדה של הכלים לגרסה מסוימת מבטיחה גם נטישה נמוכה יחסית בפלט של כלי הרכב, וכתוצאה מכך חוויית המשתמש והתמיכה תהיה חזויות. גרסת ה-Nest Labs של GNU Autotools מומלצת לשימוש עם OpenWeave.
כדי ליצור כלים אוטומטיים של Nest Labs GNU:
git clone https://github.com/openweave/openweave-core.git
cd openweave-core
make -C third_party/nlbuild-autotools/repo/ tools
שמח
כדי להפעיל את הסקריפטים לבדיקה שנכללים ב-OpenWeave, או כדי להשתמש ב-Weave בטופולוגיה מדומה, צריך להתקין את שמחה במחשב Linux. למידע נוסף, ניתן לעיין בהגדרה מהנה.
אפליקציה עצמאית
שימוש באפליקציית ברירת המחדל OpenWeave עצמאית למארח של פיתוח מחשב או מארח.
- שכפול המאגר של OpenWeave:
git clone https://github.com/openweave/openweave-core.git
- בניית האפליקציה OpenWeave עצמאית:
cd openweave-core
make -f Makefile-Standalone
יש להשתמש בסימון help
עם Makefile-Standalone
כדי ללמוד אילו מתגי build זמינים
להתאמה אישית של גרסת ה-build.
make -f Makefile-Standalone help
לדוגמה, כדי להפעיל את הקוד של ניפוי באגים ביומן ואת הרישום ביומן:
make -f Makefile-Standalone DEBUG=1
קישור פרויקטים
- שכפול המאגר של OpenWeave:
git clone https://github.com/openweave/openweave-core.git
- הגדרת סביבת build ל-GNU Autotools:
cd openweave-core
./bootstrap
./configure
- בנייה של OpenWeave:
make all
- יוצרים פלט של המיקום במיקום נפרד לצורך קישור של פרויקט:
mkdir <openweave-output>
make DESTDIR=<openweave-output> install
אחרי ה-Staging, יש להשתמש בספריות שמתחת ל-<openweave-output>
כדי לקשר פרויקטים:
/usr/local/include
— כותרות ציבוריות/usr/local/lib
— ספריות
Android ו-iOS
כדי ליצור ספריות לקישור פרויקטים ל-Android ול-iOS, יש להשתמש בMakefiles
ספציפי לפלטפורמה:
make -f Makefile-Android
make -f Makefile-iOS
יש להשתמש בסימון help
עם Makefile-<platform>
כדי ללמוד
אילו מתגי build זמינים להתאמה אישית של ה-build. למשל:
make -f Makefile-Android help
make -f Makefile-iOS help
הגדרה
לפני שמגדירים את OpenWeave עם סקריפטים וכותרות שונים, אפשר להשתמש בכלים האוטומטיים כדי לפתוח מחדש את קובצי ה-build הרלוונטיים:
./bootstrap
יש לבצע את השלב הזה פעם אחת, אחרי תשלום בקופה ואז אחר כל שינוי ב-configure.ac
או ב-Makefile.am
. אין צורך לחזור עליה רק כשמשנים את ההגדרות או את היעדים של ה-build.
סקריפטים
אפשר להשתמש בסימון --help
עם סקריפט התצורה הכלול בו כדי לקבל מידע נוסף על אפשרויות שניתן להגדיר.
./configure --help
לדוגמה, כדי להגדיר את OpenWeave ללא תמיכה ב-BlueZ:
./configure --without-bluez
כותרות
ב-Makefiles
הכלולים נעשה שימוש בשני קובצי כותרות המגדירים קבועים
בזמן ההידור:
ייתכן שיוצגו גם כותרות הגדרה ספציפיות לפרויקט. מציבים את הקבצים האלה בספריית הפרויקט שלכם – אין להציב אותם במאגר OpenWeave. יש להשתמש באפשרות התצורה המתאימה כדי לציין כל מיקום של קובץ במהלך ההגדרה:
קובץ כותרת | אפשרות הגדרה |
---|---|
InetProjectConfig.h |
--with-weave-inet-project-includes=<directory> |
WeaveProjectConfig.h |
--with-weave-project-includes=<directory> |
לדוגמה, כדי להגדיר את OpenWeave לשימוש בקובץ ספציפי לפרויקט
WeaveProjectConfig.h
שנמצא בקובץ ~/my-project/headers
:
./configure --with-weave-project-includes=~/my-project/headers