1. Overview

This guide mainly focuses upon the construction process required to install Stroll.

Stroll’s build logic is based upon eBuild. In addition to the build process description explained below, you may refer to the eBuild User Guide for further detailed informations.

2. Prerequisites

In addition to the standard eBuild Prerequisites, no particular packages are required to build Stroll.

Optionally, you will need CUTe at build time and at runtime when unit testsuite is enabled (see CONFIG_STROLL_UTEST).

Optionally, you will need multiple packages installed to build the documentation. In addition to packages listed into eBuild Prerequisites, Stroll’s documentation generation process requires breathe.

3. Getting help

From Stroll source tree root, enter:

$ make help

Also note that a more detailed help message is available:

$ make help-full

Refer to eBuild help target and eBuild help-full target for further informations.

The eBuild Troubleshooting section also contains valuable informations.

4. Build Workflow

As mentioned earlier, Stroll’s build logic is based on eBuild, a GNU Make based build system. To build and install Stroll, the typical workflow is:

  1. Prepare and collect workflow requirements,

  2. Configure the construction logic,

  3. Build programs, libraries, documentation, etc.,

  4. Install components, copying files previously built to system-wide directories

Alternatively, you may replace the last step mentioned above with a Staged install. You will find below a quick starting guide showing how to build Stroll.

4.1. Preparation phase

The overall eBuild Workflow is customizable thanks to multiple make variable settings. You should adjust values according to your specific needs.

Most of the time, setting BUILDDIR, PREFIX, CROSS_COMPILE is enough. You should also set the PATH environment variable according to the set of tools required by the build process.

Optionally, you may set EXTRA_CFLAGS and EXTRA_LDFLAGS variables to give the compiler and linker additional flags respectively.

Refer to eBuild Tools and eBuild Variables for further informations.

4.2. Configure phase

To begin with, Configure the build process interactively by running the eBuild menuconfig target:

$ make menuconfig BUILDDIR=$HOME/build/stroll

4.3. Build phase

Now, proceed to the Build phase and compile / link programs, libraries, etc. by running the eBuild build target:

$ make build BUILDDIR=$HOME/build/stroll PREFIX=/usr

4.4. Install phase

Finally, Install programs, libraries, etc.: by running the eBuild install target:

$ make install BUILDDIR=$HOME/build/stroll PREFIX=/usr

4.5. Alternative staged install phase

Alternatively, perform a Staged install by specifying the DESTDIR variable instead:

$ make install BUILDDIR=$HOME/build/stroll PREFIX=/usr DESTDIR=$HOME/staging

4.6. Documentation generation

You may generate Stroll documentation by running the doc target like so:

$ make doc BUILDDIR=$HOME/build/stroll PREFIX=/usr

You may further install generated documentation by running the install-doc target:

$ make install-doc BUILDDIR=$HOME/build/stroll PREFIX=/usr DESTDIR=$HOME/staging

Finally, you may find lots of usefull informations into the Reference section of the eBuild User Guide.