4.14. Xenomai
The system must be setup first the same way as for EC-Master for Linux, especially installation of the atemsys module and optimized Link Layer usage preparation.
See also
Chapter Linux
The binaries are built using the following versions:
- armv6-vfp-eabihf:
Xenomai 2.6.3, tested on Linux Kernel 3.8.13-xenomai-2.6.4
- x64:
Xenomai 3.0.2, tested on Linux Kernel 3.18.20 (Cobalt)
- x86:
Xenomai 2.6.2.1, tested on Linux Kernel 3.5.7
Xenomai 3.0.2, tested on Linux Kernel 3.18.20 (Cobalt) and 3.10.32-rt31 (Mercury)
4.14.1. Setting up and running EcMasterDemo
- Prepare system
Prepare the system to run EcMasterDemo on Linux as described in chapter Linux
- Compile EcMasterDemo
As a starting point there is the Eclipse project for EcMasterDemo for Xenomai located at Workspace/Xenomai/EcMasterDemo. Ensure OPERATING_SYSTEM, ARCH, CFLAGS, LDFLAGS, LD_LIBRARY_PATH are set accordingly (export ARCH=x86, …) when compiling using Eclipse!
- Run using GDB
Provide search path for Xenomai libraries and prevent GDB to stop execution on SIGXCPU:
export LD_LIBRARY_PATH=../../Bin/Xenomai/x86:/usr/xenomai/lib:. gdb --args ./EcMasterDemo -i8254x 2 1 -f eni.xml -v 3 [...] (gdb) handle SIGXCPU nostop noprint nopass (gdb) run
See also
4.14.2. OS compiler settings
Besides the general settings from Compiling the EcMasterDemo the following settings are necessary to build the example application for Xenomai.
- Extra include paths
<InstallPath>/SDK/INC/Xenomai <InstallPath>/Examples/Common/Xenomai
- Extra source paths
<InstallPath>/Examples/Common/Xenomai <InstallPath>/Sources/OsLayer/Xenomai
- Extra library paths to the main EtherCAT components
<InstallPath>/SDK/LIB/Xenomai
- Extra libraries (in this order)
Xenomai 2:
AtemRasSrv EcMaster pthread dl rt native xenomai
Xenomai 3:
AtemRasSrv EcMaster pthread dl rt
xeno-config --cflags
and xeno-config --ldflags
of the Xenomai installation return the needed CFLAGS
and LDFLAGS
. If further information is needed, please refer to http://xenomai.org/ .