Chuỗi công cụ được hỗ trợ chính để tạo OpenWeave là GNU Autotools.
Yêu cầu hệ thống
Mọi nền tảng hệ điều hành chính đều hỗ trợ việc xây dựng và biên dịch chéo trên OpenWeave. Các chuỗi công cụ trong danh sách đã được Nest thử nghiệm chính thức.
Linux | ||||||
---|---|---|---|---|---|---|
Yêu cầu: Ubuntu 14.04 (Trusty) chính thức được hỗ trợ, nhưng mọi hệ thống dựa trên Linux tương tự cũng sẽ hoạt động. | ||||||
Liên kết C/C++, Java, Python |
|
|||||
C/C++, liên kết Java |
|
Mac OS X | ||||||
---|---|---|---|---|---|---|
Yêu cầu: XQuartz để sao chép cây con thư mục này sang cây con khác bằng các đường liên kết tượng trưng. | ||||||
C/C++, liên kết ca cao |
|
|||||
C/C++, liên kết Python |
|
Windows | ||||||
---|---|---|---|---|---|---|
Yêu cầu: Cygwin để hỗ trợ dòng lệnh Linux. | ||||||
Liên kết C/C++ |
|
Nhúng | ||||||
---|---|---|---|---|---|---|
Liên kết C/C++ |
|
Điều kiện tiên quyết
Ngoài một chuỗi công cụ được hỗ trợ, bạn nên cài đặt các gói và công cụ sau đây trước khi tạo OpenWeave.
Gói
Linux:
sudo apt-get install python-pip python-setuptools bridge-utils /
libglib2.0-dev libdbus-1-dev libudev-dev /
libical-dev libreadline-dev
Linux và Mac OS X:
pip install --user google-cloud googleapis-common-protos grpc protobuf pycryptodomex
sudo cpan -i Text::Template
Công cụ tự động GNU
OpenWeave phụ thuộc vào GNU Autotools cho hệ thống bản dựng của nó. Phải có một phiên bản GNU autotools để tạo thành công OpenWeave. Cách sử dụng phiên bản công cụ tự động do hệ thống cung cấp trên Linux:
sudo apt-get install libtool autoconf automake
Đối với các hệ thống mà Công cụ tự động GNU không có sẵn hoặc có thể cài đặt (ví dụ: Mac OS) hoặc trên các hệ thống không cung cấp phiên bản xây dựng sẵn chắc chắn, Nest Labs đã tạo một khung hệ thống bản dựng tùy chỉnh, dựa trên GNU Autotools. Hệ thống ghim nhóm chương trình được sử dụng trong quá trình tạo bản dựng vào một phiên bản tốt đã biết. Việc ghim công cụ vào một phiên bản cụ thể cũng đảm bảo tỷ lệ rời bỏ tương đối thấp trong dữ liệu đầu ra của công cụ tự động, nhờ đó dẫn đến trải nghiệm hỗ trợ và nhà phát triển có thể dự đoán được. Bạn nên sử dụng bản dựng Nest Labs của GNU Autotools để sử dụng với OpenWeave.
Cách xây dựng Nest Labs GNU Autotools:
git clone https://github.com/openweave/openweave-core.git
cd openweave-core
make -C third_party/nlbuild-autotools/repo/ tools
Tươi vui
Để chạy các tập lệnh thử nghiệm có trong OpenWeave hoặc sử dụng Weave trong các ứng dụng phân bổ mô phỏng, hãy cài đặt Happy trên máy Linux của bạn. Hãy xem bài viết Chúc bạn thiết lập vui vẻ để biết thêm thông tin.
Ứng dụng độc lập
Sử dụng ứng dụng OpenWeave Độc lập mặc định cho máy chủ phát triển máy tính hoặc máy chủ.
- Sao chép kho lưu trữ OpenWeave:
git clone https://github.com/openweave/openweave-core.git
- Xây dựng ứng dụng OpenWeave Độc lập:
cd openweave-core
make -f Makefile-Standalone
Sử dụng cờ help
với Makefile-Standalone
để tìm hiểu xem những công tắc xây dựng nào có sẵn để tùy chỉnh bản dựng.
make -f Makefile-Standalone help
Ví dụ: để bật mã gỡ lỗi Weave và ghi nhật ký:
make -f Makefile-Standalone DEBUG=1
Liên kết dự án
- Sao chép kho lưu trữ OpenWeave:
git clone https://github.com/openweave/openweave-core.git
- Định cấu hình môi trường bản dựng cho AutoGN Autotools:
cd openweave-core
./bootstrap
./configure
- Tạo OpenWeave:
make all
- Chuyển kết quả đầu ra sang vị trí riêng biệt để liên kết dự án:
mkdir <openweave-output>
make DESTDIR=<openweave-output> install
Sau khi chạy thử, hãy sử dụng các thư mục trong
<openweave-output>
để liên kết dự án:
/usr/local/include
— tiêu đề công khai/usr/local/lib
— thư viện
Android và iOS
Để xây dựng các thư viện giúp liên kết dự án trên Android và iOS, hãy sử dụng
Makefiles
theo nền tảng:
make -f Makefile-Android
make -f Makefile-iOS
Sử dụng cờ help
với Makefile-<platform>
để
tìm hiểu xem có công tắc nào để tùy chỉnh bản dựng. Ví dụ:
make -f Makefile-Android help
make -f Makefile-iOS help
Cấu hình
Trước khi định cấu hình OpenWeave với nhiều tập lệnh và tiêu đề khác nhau, hãy sử dụng công cụ tự động để khởi động các tệp bản dựng có liên quan:
./bootstrap
Bước này cần được thực hiện một lần, sau quy trình thanh toán trên cây và sau đó là bất kỳ thay đổi nào đối với configure.ac
hoặc Makefile.am
. Không cần lặp lại khi chỉ thay đổi cấu hình hoặc mục tiêu của bản dựng.
Tập lệnh
Sử dụng cờ --help
với tập lệnh cấu hình đi kèm để tìm hiểu thêm về các tùy chọn có thể định cấu hình.
./configure --help
Ví dụ: để định cấu hình OpenWeave mà không hỗ trợ BlueZ:
./configure --without-bluez
Tiêu đề
Makefiles
bao gồm sử dụng hai tệp tiêu đề xác định hằng số tại
thời gian biên dịch:
Bạn cũng có thể cung cấp các tiêu đề cấu hình dành riêng cho dự án. Hãy đặt các tệp này vào thư mục dự án của bạn—không đặt các tệp này trong kho lưu trữ OpenWeave. Sử dụng tùy chọn cấu hình thích hợp để chỉ định vị trí của mỗi tệp trong khi định cấu hình:
Tệp tiêu đề | Tùy chọn cấu hình |
---|---|
InetProjectConfig.h |
--with-weave-inet-project-includes=<directory> |
WeaveProjectConfig.h |
--with-weave-project-includes=<directory> |
Ví dụ: để định cấu hình OpenWeave sử dụng tệp
WeaveProjectConfig.h
dành riêng cho dự án nằm trong ~/my-project/headers
:
./configure --with-weave-project-includes=~/my-project/headers