Public | Automated Build

Last pushed: 6 days ago
Short Description
Based on sbcp/clang-buildenv with all required dependencies to build Starburst Satellite Library
Full Description

Starburst Satellite Library - v0.8

This projects contains code for the Starburst Satellite Library, which is meant to be used alongside
Starburst Engine, and inside games or other applications.

Compatibility:

  • Windows 10 (Windows 8 may work, but is not supported)
  • GNU/Linux 4.X or above
  • Android 5.0 Lollipop (Android 4.4 KitKat and above may work, but is not supported)
  • macOS Sierra

Note on processor architectures: Even though only x86_64 processor architecture is supported for desktop platforms,
others should work. For Android, focus is on ARM and x86.

Dependencies

Dependencies are handled via CMake External Project. To retrieve and build them, simply run

mkdir build
cd build
cmake .. -DDEPENDENCIES=ON

By default, the project clones, compiles and links against its included dependencies.
Some of the dependencies have a prebuilt version for specific OS. If the versions fits, it should present no problem.
If you want to use your own dependencies, you need to define the <DEPS-NAME>_ROOT variables either in your environment
or within CMake.

Docker image

A Docker image containing all the dependencies is available at
sbcp/satlib-buildenv. If you are using this image, you can go on to
the Build step

References

For Linux only

  • libsodium13 (installable from repository, required by libzmq)

For Android only

Build

You will need to have a few tools to compile this project:

  • CMake version 3.8 or higher
  • A C++14 compatible compiler. Usually, they are provided with the platform-specific SDK:
    • msvc 19.0, included in Visual Studio 2015, alongside Windows 10 SDK
    • clang >= 3.8, for GNU/Linux and macOS (included in XCode)
  • Under macOS, you'll also need libtool, autoconf & automake:
    brew install libtool autoconf automake
    

Protobuf

The Starburst Satellite Library is dedicated to work alongside Starburst Engine.
Both have a common API using gRPC generated using Protobuf, stored in api folder. They are provided in the repository,
but if you which to recompile it, you will need the protoc executable, version 3.2.0, and the .proto files of
Starburst Engine. See Starburst Engine README for more info on how to generate C++ files.

Windows

To compile gRPC, you will also need those executables, available in PATH:

Once you're good to go, simply run (in the build directory previously created)

cmake .. -DDEPENDENCIES=OFF -DCMAKE_BUILD_TYPE=Release
make
make check # Only if you want to build & run tests

On Windows, don't forget to specify the CMake generator by adding:
-G "Visual Studio 14 2015 Win64".

CMake options

Several options are available when generating project with CMake. You can display them with cmake -N -LH.

Tests

To run tests, you can simply run make check, assuming you didn't disable the tests compilation with CMake.

Remarks, questions & bug reports

  • dev@starburst-computing.com
  • antoine.richard@starburs-computing.com
  • benjamin.segault@starburst-computing.com
  • cedric.enclos@starburst-computing.com
Docker Pull Command
Owner
sbcp

Comments (0)