User Tools

Site Tools


build

This is an old revision of the document!


Build the Software

The application is developed on a Linux host machine and can then be deployed to the board.

Preparations

You need any 64 bit Linux version (VM or standalone). We suggest using Ubuntu. Please make sure to have all necessary tools available.

$ sudo apt-get install make cmake git g++

As cross tool chain, the arm-linux-gnueabihf-gcc-4.9 is needed. It is recommended to use a Ubuntu 16.04 as host operating system, since this packet is available in the default repositories. If a Linux host is used in a virtual machine, a lightweight Ubuntu distribution is recommended. In case you are using a newer Ubuntu version, you have to add xenial to your sources list, see https://askubuntu.com/questions/1036108/install-gcc-4-9-at-ubuntu-18-04.

Getting the Sources with a Script

A git repository https://github.com/eeduro/eeduro-scripts hosted on GitHub contains useful build scripts. Fetch it on your cross development system with

$ git clone https://github.com/eeduro/eeduro-scripts.git eeros-project
$ cd eeros-project/delta

Run the clone.sh script. This will clone all the necessary repositories.

$ ./clone.sh

Compile Roboticscape Library

The library for the roboticscape must be compiled manually. Though the library is already on the target, we must also have it on the host, in order to be able to link an application. At the time of writing, the Beaglebone Blue boards are shipped with an image that has the robotics cape library version 0.3.4 installed. Therefore, it is highly recommended to use this version. The bbblue-eeros wrapper library was implemented to work with the robotics cape library v0.3.4. Newer version were not tested yet. When using the clone.sh script, the correct version is checked out per default and no additional step is necessary.
If not yet installed, the cross toolchain must be installed on the host machine with the following command

$ sudo apt-get install g++-4.9-arm-linux-gnueabihf

If this fails and your Linux version does not offer the right version of the cross toolchain in its repositories, you have to add xenial to your sources list, see https://askubuntu.com/questions/1036108/install-gcc-4-9-at-ubuntu-18-04.

To compile the library, change into:

$ cd librobotcontrol/libraries

and edit the Makefile therein. Change the following two lines from

CC		:= gcc
LINKER		:= gcc

to

CC		:= arm-linux-gnueabihf-gcc-4.9
LINKER		:= arm-linux-gnueabihf-gcc-4.9

This change is necessary because the library must be compiled with the cross compiler. Now, the roboticscape library can be compiled using make.

$ make

Compile

Change back into your project directory and start the compilation of EEROS, the hardware wrapper library, and the delta application with

$ ./make.sh

Next: Connect to the Target

build.1573834267.txt.gz · Last modified: 2019/11/15 17:11 by graf