bas524 / cmake.macchina.io

cmake.macchina.io is a fork of macchina.io IoT Edge Device SDK

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This is a fork of macchina.io project. I did it for the cmake build system support.

macchina.io

macchina.io Edge Device SDK is a powerful application software platform for IoT devices.

With macchina.io you can rapidly build and deploy device applications that communicate with devices, sensors, actuators, cloud services, and humans.

macchina.io provides a web-enabled, secure, modular and extensible C++ and JavaScript IoT application environment on top of Linux, consisting of middleware, protocols and rich APIs. macchina.io provides ready-to-use and industry proven software building blocks that enable applications to collect, process, filter, analyze and visualize sensor, machine and process data locally, directly where it originates, and where the action happens. macchina.io enables IoT edge and fog computing.

macchina.io runs on Linux-based devices, including IoT gateways, industrial computing devices, and prototyping platforms like the Raspberry Pi, Beaglebone and MangOH.

macchina.io is based on the POCO C++ Libraries and uses the V8 JavaScript engine.

For more information, including documentation, please see the macchina.io website. There are also a couple of useful articles and How-To's in the project wiki.

Prerequisites

  • cmake 3.5.0 or newer
  • Linux: GNU C++ (g++) 5.0 or newer; alternatively Clang++ 3.4 or newer (C++14)
  • macOS: Clang++ (Apple LLVM) 10.0 or newer
  • Windows: MSVC2017
  • OpenSSL headers and libraries (on macOS, via Homebrew: brew install openssl)
  • Python 2.7 (for building V8)

Getting Started

For the impatient, using a Linux or macOS or Windows machine:

$ git clone https://github.com/bas524/macchina.io.git
$ cd macchina.io
$ git checkout master
$ mkdir cmake-build
$ cd cmake-build
$ cmake -DCMAKE_BUILD_TYPE=Release ..
$ cmake --build . --config Release

On MacOS system set openssl cmake variable

$ cmake -DCMAKE_BUILD_TYPE=Release -DOPENSSL_ROOT_DIR=/usr/local/opt/openssl ..

Then, on Linux:

$ cd bin
$ export LD_LIBRARY_PATH=$PWD/../lib
$ ./macchina

On macOS:

$ cd bin
$ export DYLD_LIBRARY_PATH=$PWD/../lib
$ ./macchina

On Windows:

$ cd bin
$ ./macchina

Then direct your favorite web browser to http://localhost:22080 and log in with username 'admin' and password 'admin'.

For more detailed instructions, including how to cross-compile for embedded Linux targets, as well as an introduction to writing JavaScript code for macchina.io, see the documentation, specifically Introduction and Overview and Getting Started with macchina.io.

Contributions

We welcome contributions! Specifically we're looking for new sensor and device implementations, as well as additional protocols. Please see our CONTRIBUTING document to get started.

About

cmake.macchina.io is a fork of macchina.io IoT Edge Device SDK

License:Apache License 2.0


Languages

Language:C++ 61.2%Language:JavaScript 20.6%Language:C 15.1%Language:Python 2.2%Language:CMake 0.3%Language:HTML 0.2%Language:Makefile 0.1%Language:CSS 0.1%Language:Shell 0.1%Language:Batchfile 0.0%Language:Lua 0.0%Language:PowerShell 0.0%Language:Emacs Lisp 0.0%Language:Scheme 0.0%Language:R 0.0%Language:Vim Script 0.0%Language:Rich Text Format 0.0%Language:Perl 0.0%