Google is committed to advancing racial equity for Black communities. See how.
דף זה תורגם על ידי Cloud Translation API.
Switch to English

בנה OpenWeave

שרשרת הכלים הנתמכת העיקרית לבניית OpenWeave היא GNU Autotools.

דרישות מערכת

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

לינוקס

דרישות: אובונטו 14.04 (Trusty) נתמך באופן רשמי, אך כל מערכת דומה מבוססת לינוקס צריכה לעבוד.
כריכות C / C ++, Java, Python
שרשראות כלים gcc 4.6.3
יעדים i386-unknown-linux-gnu
x86_64-unknown-linux-gnu
C / C ++, כריכות Java
שרשראות כלים gcc 4.6
יעדים arm-unknown-linux-android
armv7-unknown-linux-android
i386-unknown-linux-android

Mac OS X

דרישות: XQuartz לשיבוט עץ משנה אחד בספרייה עם קישורים סימבוליים.
C / C ++, כריכות קקאו
יעדים armv7-apple-darwin-ios
armv7s-apple-darwin-ios
i386-apple-darwin-ios
C / C ++, כריכות פיתון
שרשראות כלים LLVM / clang 3.5 (6.0)
יעדים i386-apple-darwin-macosx
x86_64-apple-darwin-macosx

חלונות

דרישות: Cygwin עבור תמיכה בשורת הפקודה של לינוקס.
כריכות C / C ++
שרשראות כלים gcc 4.8.3
יעדים i686-pc-cygwin

מוטבע

כריכות C / C ++
שרשראות כלים gcc 4.4.1
LLVM / clang 3.1
LLVM / clang 3.3
יעדים זרוע * -לא ידוע-לינוקס *
זרוע * -לא ידוע- freertos-lwip

תנאים מוקדמים

בנוסף לשרשרת כלים נתמכת, אנו ממליצים להתקין את החבילות והכלים הבאים לפני בניית OpenWeave.

חבילות

לינוקס:

sudo apt-get install python-pip python-setuptools bridge-utils /
               libglib2.0-dev libdbus-1-dev libudev-dev /
               libical-dev libreadline-dev

לינוקס ו- Mac OS X:

pip install --user google-cloud googleapis-common-protos grpc protobuf pycryptodomex
sudo cpan -i Text::Template

GNU אוטומטי

OpenWeave תלוי ב- GNU Autotools עבור מערכת הבנייה שלה. גרסה של GNU Autotools חייבת להיות זמינה לבניית OpenWeave בהצלחה. כדי להשתמש בגרסה המסופקת על ידי מערכות אוטומטיות בכלי לינוקס:

sudo apt-get install libtool autoconf automake

עבור מערכות שבהן ה- GNU האוטומטיים אינם זמינים או ניתנים להתקנה (למשל, Mac OS) או במערכות שבהן הגרסה המסופקת על ידי המערכת אינה מספקת ייצור יציב מחוץ לקופסה, Nest Labs יצרה מבנה מותאם אישית ומותאם למפתח. מסגרת מערכת, המבוססת על GNU אוטוטולים. המערכת מצמידה את מערך התוכניות המשמשות בדור ה- build לגרסה ידועה. הצמדת הכלים לגרסה מסוימת מבטיחה גם נטיות נמוכות יחסית בתפוקת האוטומטריות ובכך מובילה לחוויית מפתח ותמיכה צפויה. בניית מעבדות Nest של GNU Autotools מומלצת לשימוש עם OpenWeave.

לבניית אוטומטיות של GN Labs GNU:

git clone https://github.com/openweave/openweave-core.git
cd openweave-core
make -C third_party/nlbuild-autotools/repo/ tools

שַׂמֵחַ

כדי להריץ את סקריפטי הבדיקה הכלולים ב- OpenWeave, או להשתמש ב- Weave בטופולוגיות מדומות, התקן את Happy במחשב הלינוקס שלך. למידע נוסף, ראה התקנת Happy .

יישום עצמאי

השתמש ביישום OpenWeave העצמאי המוגדר כברירת מחדל עבור מארח פיתוח שולחן עבודה או שרת.

  1. שיבט את מאגר OpenWeave:
    git clone https://github.com/openweave/openweave-core.git
  2. בנה את היישום העצמאי OpenWeave:
    cd openweave-core
    make -f Makefile-Standalone

השתמש בדגל help עם Makefile-Standalone כדי ללמוד אילו מתגי בנייה זמינים להתאמה אישית של בנייה.

make -f Makefile-Standalone help

לדוגמא, כדי להפעיל קוד איתור באגים ורישום:

make -f Makefile-Standalone DEBUG=1

קישור פרוייקט

  1. שיבט את מאגר OpenWeave:
    git clone https://github.com/openweave/openweave-core.git
  2. קבע את תצורת סביבת הבנייה עבור GNU Autotools:
    cd openweave-core
    ./bootstrap
    ./configure
  3. בנה OpenWeave:
    make all
  4. ביים את הפלט למיקום נפרד לקישור הפרויקט:
    mkdir <openweave-output>
    make DESTDIR=<openweave-output> install

לאחר הבמה, השתמש בספריות תחת <openweave-output> לקישור הפרויקט:

  • /usr/local/include - כותרות ציבוריות
  • /usr/local/lib - ספריות

אנדרואיד ו- iOS

כדי לבנות ספריות לקישור פרויקטים של Android ו- iOS, השתמש ב- Makefiles הספציפי לפלטפורמה:

make -f Makefile-Android
make -f Makefile-iOS

השתמש בדגל help עם Makefile- <platform> כדי ללמוד אילו מתגי בנייה זמינים להתאמה אישית של בנייה. לדוגמה:

make -f Makefile-Android help
make -f Makefile-iOS help

תְצוּרָה

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

./bootstrap

שלב זה צריך להתבצע פעם אחת, לאחר בדיקת העץ, ובהמשך לשינויים configure.ac או Makefile.am . אין צורך לחזור עליו כאשר פשוט משנים תצורות או יעדי בנייה.

תסריטים

השתמש בדגל --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 ספציפי WeaveProjectConfig.h הממוקם ב- ~/my-project/headers :

./configure --with-weave-project-includes=~/my-project/headers