Google está empenhada em fazer avançar a equidade racial para as comunidades negras. Veja como.
Esta página foi traduzida pela API Cloud Translation.
Switch to English

Desenvolver OpenWeave

O conjunto de ferramentas suportado principal para a construção de OpenWeave é GNU Autotools.

requisitos de sistema

Todas as principais plataformas de sistemas operacionais apoiar a construção e cross-compilação de OpenWeave. toolchains listadas tenham sido oficialmente testado por ninho.

Linux

Requisitos: Ubuntu 14.04 (Trusty) é suportado oficialmente, mas qualquer sistema baseado em Linux semelhante deve funcionar.
C / C ++, Java, ligações Python
toolchains gcc 4.6.3
alvos i386-unknown-linux-gnu
x86_64-unknown-linux-gnu
C / C ++, ligações Java
toolchains gcc 4.6
alvos armar-unknown-linux-android
ARMv7-unknown-linux-android
i386-unknown-linux-android

Mac OS X

Requisitos: XQuartz para a clonagem de um sub diretório para outro com links simbólicos.
C / C ++, as ligações de cacau
alvos ARMv7-apple-darwin-ios
armv7s-maçã-darwin-ios
i386-maçã-darwin-ios
C / C ++, ligações Python
toolchains LLVM / tinido 3,5 (6,0)
alvos i386-maçã-darwin-macosx
x86_64-apple-darwin-macosx

janelas

Requisitos: Cygwin para apoio de linha de comando do Linux.
ligações de C / C ++
toolchains gcc 4.8.3
alvos i686-pc-cygwin

embutido

ligações de C / C ++
toolchains gcc 4.4.1
LLVM / clang 3.1
LLVM / 3,3 tinido
alvos armar * -Desconhecido-linux *
armar * -Desconhecido-FreeRTOS-lwIP

Pré-requisitos

Além de um conjunto de ferramentas suportado, recomendamos a instalação dos seguintes pacotes e ferramentas antes de construir OpenWeave.

pacotes

Linux:

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

Linux e Mac OS X:

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

GNU Autotools

OpenWeave depende GNU Autotools pelo seu sistema de compilação. A versão do GNU Autotools deve estar disponível para construir com sucesso OpenWeave. Para usar a versão fornecido pelo sistema de autotools no Linux:

 sudo apt-get install libtool autoconf automake 

Para sistemas onde o GNU Autotools não estão prontamente disponíveis ou instalável (por exemplo, Mac OS) ou em sistemas onde a versão fornecido pelo sistema não fornece uma sólida geração de construção out-of-box, Nest Labs criou um personalizado, construção turnkey estrutura do sistema, baseado no GNU Autotools. O sistema pins o conjunto de programas utilizados na geração de compilação para uma versão conhecido bom. Fixando as ferramentas para uma versão específica também garante relativamente baixo churn na saída do autotools conduzindo assim para o desenvolvedor previsível e experiência de suporte. A construção do ninho Labs da GNU Autotools é recomendado para uso com OpenWeave.

Para construir Nest Labs GNU Autotools:

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

Feliz

Para executar os scripts de teste incluídos no OpenWeave, ou para usar Weave em topologias simulados, instale feliz em sua máquina Linux. Veja configuração feliz para mais informações.

aplicativo independente

Use o padrão do aplicativo OpenWeave Standalone para uma máquina de desenvolvimento desktop ou servidor.

  1. Clonar o repositório OpenWeave:
     git clone https://github.com/openweave/openweave-core.git 
  2. Criar o aplicativo OpenWeave Standalone:
     cd openweave-core
    make -f Makefile-Standalone 

Utilizar a help marque com Makefile-Standalone para saber o que estão disponíveis para personalização construção interruptores de construção.

 make -f Makefile-Standalone help 

Por exemplo, para ativar o código de depuração Weave e registro:

 make -f Makefile-Standalone DEBUG=1 

linking projeto

  1. Clonar o repositório OpenWeave:
     git clone https://github.com/openweave/openweave-core.git 
  2. Configurar o ambiente de criação para GNU Autotools:
     cd openweave-core
    ./bootstrap
    ./configure 
  3. Construir OpenWeave:
     make all 
  4. Encenar a saída para um local separado para ligação do projeto:
     mkdir <openweave-output>
    make DESTDIR= <openweave-output> install 

Após preparação, use os diretórios sob <openweave-output> para o projeto de interligação:

  • /usr/local/include - cabeçalhos públicos
  • /usr/local/lib - bibliotecas

Android e iOS

Para bibliotecas de compilação para Android e iOS ligação projeto, use os específicos da plataforma Makefiles :

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

Utilizar a help marque com Makefile- <platform> para saber o que estão disponíveis para personalização construção interruptores de construção. Por exemplo:

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

Configuração

Antes de configurar OpenWeave com vários scripts e cabeçalhos, utilize as autotools para inicializar os arquivos de compilação relevantes:

 ./bootstrap 

Esta etapa deve ser realizada uma vez, depois de um check-out árvore, e, posteriormente, sobre quaisquer alterações à configure.ac ou Makefile.am . Ela não precisa de ser repetido quando simplesmente mudando configurações de compilação ou alvos.

Scripts

Use o --help bandeira com o script de configuração incluído para aprender mais sobre as opções configuráveis.

 ./configure --help 

Por exemplo, para configurar OpenWeave sem apoio BlueZ:

 ./configure --without-bluez 

cabeçalhos

Os incluídos Makefiles usar dois arquivos de cabeçalho que definem constantes em tempo de compilação:

cabeçalhos de configuração específicas do projeto também pode ser fornecido. Coloque esses arquivos em seu projeto diretório de não colocá-los dentro do repositório OpenWeave. Use a opção de configuração apropriada para especificar a localização de cada arquivo durante a configuração:

Arquivo de cabeçalho opção de configuração
InetProjectConfig.h --with-weave-inet-project-includes= <directory>
WeaveProjectConfig.h --with-weave-project-includes= <directory>

Por exemplo, para OpenWeave configure para usar um projeto específico de WeaveProjectConfig.h arquivo localizado em ~/my-project/headers :

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