Getting Started

Obtain a Steinwurf License

Before you download or use our libraries, you MUST obtain a valid license.

  • If you intend to use Kodo for research and educational purposes, please fill out this form to obtain a Research License.
  • If you intend to evaluate or test Kodo or Score in a commercial context, you can obtain a Commercial Evaluation License. Please contact us at sales@steinwurf.com.
  • For a general Commercial License, contact us at sales@steinwurf.com.

Note

Commercial and commercial evaluation users also needs to register via this form when a license has been signed.

Tools Needed

If you wish to build our libraries with our build system, you will need to install the following tools:

  1. C++11 compliant compiler: A C++ compiler that supports the C++11 standard. You can see a list of currently supported compilers on our Buildbot page (Steinwurf Buildbot).
  2. Git: The git version control system for managing our libraries.
  3. Python: We use the Python-based waf build system.

The following sections describe how to install the tools on different platforms.

Download Tools (Ubuntu or other Debian-based distributions)

Get the dependencies using the following command:

sudo apt-get install g++ python git-core

Download Tools (Windows)

  1. C++11 compliant compiler: You need a working C++11 compiler. The latest supported version is Visual Studio Express 2015 for Desktop, the Professional and Community Editions should also work. Visual Studio 2017 is not supported at the moment.
  2. Python: You need a working Python installation. Find the available download on the Python homepage. If you are in doubt about which version to install, you may use the Python 2.7.10 Windows Installer.
  3. Git: There are several ways to get git on Windows. If you plan to use the waf build scripts to build our examples and unit tests, you should install the Git for Windows tool (version 2.8.x or above).
  4. TortoiseGit (Optional): You can also install the latest version of TortoiseGit if you prefer to use a GUI instead of the command-line git tools. Version 2.1.0 and later should work fine.

Download Tools (Mac OSX)

C++11 compliant compiler: You need a working C++ compiler. We tested tested XCode 7.1 with the Apple LLVM 7.0 compiler which can be downloaded free of charge. Newer versions should also be fine.

On Mavericks or above (OSX 10.9+):
  1. Installing XCode from the Mac App Store is optional

  2. Install the standalone Command Line Tools package:

    xcode-select --install
    

This command will open a GUI window (do not run this over SSH).

Waf (Build System)

We use the Waf build system to build our libraries, examples and unit tests. Waf is a Python-based build system that supports a wide variety of use cases. You may read more about Waf at the project homepage: https://waf.io/

A Waf project typically contains two types of files:

  1. The waf file is the actual build system executable. This binary file is not meant to be edited.
  2. Several wscript and wscript_build files: These files contain the project build information. You can think of it as a type of makefile written in Python.

Note

See the waf build options by running python waf -h in your terminal.

Git Version Control System

Our projects can be downloaded with git. This version control system allows you to easily get new updates whenever a project is updated.

Note

We are currently migrating our private repositories from github.com to gitlab.com.

  • The Kodo libraries are currently still hosted on GitHub so to access those you just need a GitHub account.
  • The Score libraries are hosted on GitLab with some dependencies hosted on Github. Therefore you will need an account on both platforms.

GitHub / GitLab accounts

Accounts for GitHub and GitLab respectively can be created at:

  1. Sign-up GitHub
  2. Sign-up GitLab

GitHub / GitLab authentication

If you don’t want to type your GitHub or GitLab username and password when downloading our main libraries (and their dependencies), then we recommend using Git-over-SSH. It is easy to configure SSH authentication on all platforms following this GitHub guide or GitLab guide.

You don’t have to use a passphrase, and you can skip anything about the ssh-agent, because your key will be loaded automatically. If you are using Windows, then run these commands in Git Bash. We don’t recommend using “GitHub for Windows”, so don’t follow the Windows-specific guide (the generic guide is good for all platforms).

After adding your SSH key on GitHub, please make sure that the following login works for you:

ssh -T git@github.com

And try the same thing on GitLab:

ssh -T git@gitlab.com

In both cases, you should get a short welcome message.

Note

If you don’t want to configure SSH authentication on github.com or gitlab.com you can also clone the repository using the https protocol.

Normally, you have to type your GitLab/GitHub username and password with https. On Windows, you can configure git to store your credentials with the following command:

git config --global credential.helper wincred