Google متعهد به پیشبرد برابری نژادی برای جوامع سیاه است. ببینید چگونه.
این صفحه به‌وسیله ‏Cloud Translation API‏ ترجمه شده است.
Switch to English

OpenWeave بسازید

اولین ابزار پشتیبانی اصلی برای ساخت OpenWeave ، GNU Autotools است.

الزامات سیستم

همه سیستم عامل های اصلی سیستم عامل از ساخت و جمع آوری متقابل OpenWeave پشتیبانی می کنند. Nest با استفاده از ابزارهای ذکر شده به طور رسمی آزمایش شده است.

لینوکس

مورد نیاز: اوبونتو 14.04 (Trusty) رسما پشتیبانی می شود ، اما هر سیستم مبتنی بر لینوکس باید کار کند.
اتصالات C / C ++ ، Java ، Python
ابزارهای زنجیره ای gcc 4.6.3
اهداف i386-ناشناخته-linux-gnu
x86_64-ناشناخته-linux-gnu
اتصالات C / C ++ ، Java
ابزارهای زنجیره ای gcc 4.6
اهداف بازوی ناشناخته-لینوکس-اندرویدی
armv7-ناشناخته-لینوکس-اندیشه
i386-ناشناخته-لینوکس-اندیشه

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
اهداف بازو * -unknown-linux *
بازو * -unknown-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 Autotools

OpenWeave برای سیستم ساخت خود به Autotools GNU بستگی دارد. برای ساختن موفقیت آمیز OpenWeave باید نسخه ای از Autotool های GNU موجود باشد. برای استفاده از نسخه سیستم autotools موجود در لینوکس:

 sudo apt-get install libtool autoconf automake 

در مورد سیستمهایی که GNU Autotools به راحتی در دسترس نیست و یا قابل نصب نیست (به عنوان مثال Mac OS) یا سیستمهایی که نسخه ارائه شده از سیستم نسخ solid ساخت محکم خارج از جعبه را در اختیار شما قرار نمی دهد ، Nest Labs ساخته شده است که یک کلید در دست ساخته است. چارچوب سیستم ، مبتنی بر GTU Autotools. سیستم مجموعه برنامه های بکار رفته در ساخت را به نسخه خوب شناخته شده پین ​​می کند. پین کردن ابزارها به یک نسخه خاص همچنین باعث می شود که در خروجی اتومبیل ها خفگی نسبتاً کم ایجاد شود و به این ترتیب منجر به تجربه قابل پیش بینی توسعه دهنده و پشتیبانی شود. ساخت Nest Labs از GNU Autotools برای استفاده با OpenWeave توصیه می شود.

برای ساخت Nest Labs GNU Autotools:

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

خوشحال

برای اجرای اسکریپت های آزمایشی موجود در OpenWeave یا استفاده از Weave در توپولوژی های شبیه سازی شده ، Happy را روی دستگاه لینوکس خود نصب کنید. برای اطلاعات بیشتر به تنظیمات مبارک مراجعه کنید.

برنامه مستقل

از برنامه پیش فرض OpenWeave Standalone برای میزبان یا میزبان توسعه سرور استفاده کنید.

  1. مخزن مخزن OpenWeave:
     git clone https://github.com/openweave/openweave-core.git 
  2. برنامه OpenWeave Standalone را بسازید:
     cd openweave-core
    make -f Makefile-Standalone 

از پرچم help با Makefile-Standalone تا بدانید که سوئیچ های ساخت برای سفارشی سازی ساختمان در دسترس هستند.

 make -f Makefile-Standalone help 

به عنوان مثال ، برای فعال کردن کد اشکال زدایی و ورود به سیستم Weave:

 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 کتابخانه های /usr/local/lib

Android و 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 با اسکریپت ها و هدر های مختلف ، از autotool ها برای راه اندازی پرونده های مربوطه استفاده کنید:

 ./bootstrap 

این مرحله باید یک بار انجام شود ، پس از پرداخت درخت و متعاقباً در مورد هرگونه تغییر در configure.ac . Makefile.am یا 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