Giter VIP home page Giter VIP logo

sil-kit's Introduction

The Vector SIL Kit

The Vector SIL Kit is an open-source library for connecting Software-in-the-Loop Environments. This README is intended to provide you with quick start on how to build the Vector SIL Kit.

For documentation on using the Vector SIL Kit, see the HTML documentation, which can be generated when building the Vector SIL Kit (cf. Customizing the Build) and is provided in pre-built form with the SIL Kit packages.

The SIL Kit source and documentation is licensed under a permissible open source license, see LICENSE file. For licenses of third party dependencies, see ThirdParty/LICENSES.rst.

Related Projects

One of the design goals of SIL Kit is to easily connect different third-party tools, such as emulators, virtual machines and simulation tools.

The SIL Kit ecosystem comprises the following turn-key solutions:

Related Applications

The SIL Kit ecosystem also offers the following applications:

  • The SIL Kit Dashboard collects, persists and displays information from different SIL Kit systems.

Getting Started - GIT Clone

This section specifies the necessary steps to build the SIL Kit if you have just cloned the repository.

1. Fetch Third Party Software

The first thing that you should do is initializing the submodules to fetch the required third party software:

git submodule update --init --recursive

2. Generate a Project

The SIL Kit uses CMake for its build system. CMake can generate a platform specific project, e.g., a Visual Studio solution or Linux make files. To generate a project using the default project generator, create a build directory and configure CMake:

mkdir build
cd build
cmake ..

3. Build the Vector SIL Kit

Once the project has been generated, you can build the SIL Kit using the project specific tools, e.g., by opening the generated Visual Studio or by running gnu make. You can also start the build process using CMake in a platform independent way:

cmake --build .

To install the SIL Kit to a previously configured location, run:

cmake --build . --target install

4. Customize the Build

It is often helpful to specify a directory where the build should be installed. With CMake, this can be configured via the variable CMAKE_INSTALL_PREFIX. E.g., to install the SIL Kit into a folder called "install" next to the build folder, run CMake as follows:

cmake -DCMAKE_INSTALL_PREFIX=../install ..

There are also specific options to toggle details of the build:

  1. SILKIT_BUILD_DOCS=ON (default: OFF) generates HTML documentation using Doxygen and Sphinx. Both must be installed beforehand. To install the needed dependencies use pip: pip3 install -r SilKit/ci/docker/docs_requirements.txt
  2. SILKIT_BUILD_TESTS=OFF (default: ON) disables the generation of unit and integration tests. The tests are based on the GoogleTest framework, which is bundled with the SIL Kit.
  3. SILKIT_BUILD_DEMOS=OFF (default: ON) disables the generation of demo applications for the SIL Kit.
  4. SILKIT_BUILD_UTILITIES=OFF (default: ON) disables the generation of utility tools (sil-kit-registry, sil-kit-system-controller and sil-kit-monitor).

For example, if you want to build the SIL Kit with documentation enabled, call CMake in your build directory as follows:

pip3 install -r SilKit/ci/docker/docs_requirements.txt
pip3 install pipenv
cmake -D SILKIT_BUILD_DOCS=ON -B _build
cmake --build _build --target Doxygen

sil-kit's People

Contributors

mariusbgm avatar vdanieledwards avatar marcuseggenberger avatar konradbkd avatar dominikherr avatar nicohuebschmann avatar andreasrentschler avatar vjankraemer avatar nadegenag avatar vlukasbecker avatar thomasmalik avatar rubenruw avatar cam-laf avatar vjonasholley avatar christiankoellner avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.