Kaa client application delopment on raspberrypi

[Preparation] 원본글: https://kaaproject.github.io/kaa/docs/v0.10.0/Programming-guide/Using-Kaa-endpoint-SDKs/C++/SDK-Linux/

원본글대로하면 시간이 오래걸리고,

라즈베리파이에서 안되는 부분이 있고,

최신버전이 아니라서 아래와 같이 설치하는 것이 더 좋음.

 

[Cmake, G++, Boost라이브러리, SQLlite 설치]

sudo apt-get install cmake g++ libboost-dev libboost-filesystem-dev libboost-system-dev libboost-program-options-dev libboost-iostreams-dev libboost-thread-dev libboost-log-dev libsqlite3-0 libsqlite3-dev -y

 

원본글에서 boost 1.5.5를 쓰는데 현재 최신버전은 1.62.0 으로 컴파일하는 시간보다 apt-get이 훨씬 빠름

컴파일한 예전버전을 삭제해야 한다면, /usr/local/lib/ 에서 'rm libboost*' 하고 /usr/local/include/의 'boost' 디렉토리를 삭제하면 됨

 

[AVRO 설치]

wget http://archive.apache.org/dist/avro/avro-1.8.2/cpp/avro-cpp-1.8.2.tar.gz
tar -zxf avro-cpp-1.8.2.tar.gz
cd avro-cpp-1.8.2/
cmake .
sudo make install

 


필자의 경우에는 boost를 다 컴파일하고 설치했는데, AVRO 컴파일시 iostream 라이브러리가 없다고하여 윗글처럼 boost를 삭제하고 apt-get으로 인스톨함

 

 

[Botan 설치]

wget https://github.com/randombit/botan/archive/2.3.0.tar.gz

tar -zxf 2.3.0.tar.gz

cd botan-2.3.0/

wget https://github.com/randombit/botan/archive/1.11.28.tar.gz

tar -zxf 1.11.28.tar.gz

cd botan-1.11.28/

./configure.py --cpu=arm32

sudo make install


최신버전은 2.3.0인데, kaa에서는 1.11버전을 찾는다;; 

Botan을 라즈베리파이에서 컴파일시 에러가 뜨는데, 이것을 해결하기 위해서는 '--cpu=arm32'옵션을 준다.

"error: target CPU does not support ARM mode"

참조: https://github.com/randombit/botan/issues/800




Download Kaa C++ SDK from your Kaa instance and compile it. See Generate SDK.


mkdir kaa-cpp

tar -zxf kaa-cpp-ep-sdk-*.tar.gz -C kaa-cpp

cd kaa-cpp

mkdir build

cd build

cmake -DCMAKE_TOOLCHAIN_FILE=../toolchains/rpi.cmake ..

make