وسلسلة الأدوات الأساسية الأساسية لإنشاء OpenOpenave هي GNU Autotools.
متطلبات النظام
تدعم جميع الأنظمة الأساسية الرئيسية لنظام التشغيل إنشاء مجموعة من OpenWeave وتجميعها. تم اختبار سلاسل الأدوات المُدرجة بشكل رسمي من قِبل Nest.
Linux | ||||||
---|---|---|---|---|---|---|
المتطلبات: نظام التشغيل Ubuntu 14.04 (Trusty) متوافق رسميًا، ولكن من المفترض أن يعمل أي نظام مماثل مستند إلى Linux. | ||||||
C/C++ وJava وPython |
|
|||||
C/C++، روابط Java |
|
Mac OS X | ||||||
---|---|---|---|---|---|---|
المتطلبات: XQuartz لاستنساخ شجرة دليل واحدة إلى أخرى بروابط رمزية. | ||||||
C/C++ وربط الكاكاو |
|
|||||
ربط C/C++ بلغة Python |
|
نظام التشغيل Windows | ||||||
---|---|---|---|---|---|---|
المتطلبات: 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 Autotools لنظام الإنشاء. يجب أن يتوفر إصدار من GNU Autotools بنجاح لإنشاء OpenWeave. لاستخدام الإصدار الذي يوفّره النظام من الأدوات التلقائية على نظام التشغيل Linux:
sudo apt-get install libtool autoconf automake
بالنسبة إلى الأنظمة التي لا تتوفر بها أدوات GNU Autotools بسهولة أو قابلة للتثبيت (مثل نظام التشغيل Mac OS) أو الأنظمة التي لا يوفر فيها الإصدار الذي يوفره النظام إنشاءًا ثابتًا للإصدار الجاهزة، أنشأت 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 في نماذج المحاكاة، عليك تثبيت Happy على جهاز Linux. يمكنك الاطّلاع على إعداد سعيد للحصول على مزيد من المعلومات.
تطبيق مستقل
يمكنك استخدام تطبيق OpenWeave Standalone التلقائي لمضيف مضيف تطوير البرامج أو أجهزة الكمبيوتر المكتبية.
- استنساخ مستودع OpenWeave:
git clone https://github.com/openweave/openweave-core.git
- إنشاء تطبيق OpenWeave Standalone:
cd openweave-core
make -f Makefile-Standalone
استخدِم العلامة help
مع Makefile-Standalone
لمعرفة مفاتيح التحكّم التي يمكن تخصيصها لتخصيص الإصدار.
make -f Makefile-Standalone help
على سبيل المثال، لتفعيل رمز تصحيح أخطاء Weave وتسجيله:
make -f Makefile-Standalone DEBUG=1
ربط المشروع
- استنساخ مستودع OpenWeave:
git clone https://github.com/openweave/openweave-core.git
- اضبط بيئة الإصدار لـ GNU Autotools:
cd openweave-core
./bootstrap
./configure
- إنشاء OpenWeave:
make all
- ويمكنك إعداد المخرجات في مكان منفصل لربط المشروع:
mkdir <openweave-output>
make DESTDIR=<openweave-output> install
بعد التقسيم، استخدم الأدلة ضمن <openweave-output>
لربط المشروع:
/usr/local/include
— العناوين العامة/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 باستخدام نصوص برمجية ورؤوس مختلفة، استخدِم الأدوات التلقائية لتمهيد ملفات الإصدار ذات الصلة:
./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
خاص للمشروع في ~/my-project/headers
:
./configure --with-weave-project-includes=~/my-project/headers