IoTivity

Материал из CADR
Перейти к: навигация, поиск

IoTivity

Cборка и использование фреймворка IoTivity.

Необходимые утилиты и библиотеки для сборки

Для сборки нам потребуется:

  • boost 1.55 (libboost1.55-all-dev, libboost-thread1.55-dev)
  • git
  • scons
  • uuid-dev
  • libcurl4-openssl-dev

Сборка IoTivity 0.9.2 на Ubuntu 14.04

Ставим необходимые утилиты и библиотеки:

 $ sudo apt-get install git scons libboost1.55-all-dev libboost-thread1.55-dev uuid-dev libcurl4-openssl-dev
 $ sudo ldconfig

Скачиваем дистрибутив фреймворка с официального сайта (либо берём его на локальном FTP-сервере CADR'а):

 $ wget https://downloads.iotivity.org/0.9.2/iotivity-0.9.2.tar.gz

Распаковываем и переходим в каталог:

 $ tar -zxf iotivity-0.9.2.tar.gz
 $ cd iotivity-0.9.2

Клонируем необходимые репозитории:

 $ git clone https://github.com/01org/tinycbor.git extlibs/tinycbor/tinycbor

Запускаем сборку фреймворка:

 $ scons

Сборка IoTivity 0.9.2 на Debian 7.8 Wheezy

Главной сложностью при сборке фреймворка на Debian 7.8 Wheezy (и любом другом дистрибутиве, где нет boost 1.55 "из коробки") является то, что придётся собирать boost вручную.

Ставим необходимые пакеты:

 $ sudo apt-get install build-essential g++ python-dev autotools-dev libicu-dev libbz2-dev

Скачиваем и распаковываем дистрибутив boost 1.55:

 $ wget http://downloads.sourceforge.net/project/boost/boost/1.55.0/boost_1_55_0.tar.gz
 $ tar -zxf boost_1_55_0.tar.gz

Собираем и устанавливаем его:

 $ cd boost_1_55_0
 $ ./bootstrap.sh
 $ sudo ./b2 --with=all -j 2 install

Далее собираем IoTivity, как было показано выше.

Troubleshooting

Did not find boost_thread, exiting!

Симптомы

 
[... skipped ...]
*** Checking for installation of google unit test 1.7.0 ***
*** Checking for installation of hippomocks ***

*********************************** Warning ***********************************
* You are trying cross build, please make sure (x86) version libraries are     *
* installed!                                                                  *
*******************************************************************************


*********************************** Warning ***********************************
* You are trying cross build, please make sure (x86) version libraries are
* installed!                                                                  *
*******************************************************************************

Checking for C++ library boost_thread... no
Did not find boost_thread, exiting!

Решение

Установить uuid-dev:

 $ sudo apt-get install uuid-dev