AIR has a user manual that you can request by e-mailing airproduct@gmv.com
You have two ways to obtain AIR:
- Download it from GitHub at https://github.com/air-gmv/air.
- AIR is integrated in the TASTE toolchain, which is available at https://taste.tuxfamily.org/ inside the ~/tool-src/air folder.
Below is an example of how to install and use AIR. This example focuses on using the SPARC target. If you are using ARM, please refer to section 4.2.1 of the user manual.
To install AIR after cloning it from git, follow these steps:
Execute the following commands:
git clone https://gitlab.rtems.org/rtems/tools/rtems-source-builder.git rsb
cd rsb
git checkout 5
./source-builder/sb-check
cd rtems
../source-builder/sb-set-builder --prefix=/opt/rtems/5 5/rtems-sparc
Currently supported toolchain version : rtems-5.1-2019.07.25
NOTE: The previous example installs rtems5 for SPARC. Substitute sparc on the last line with your desired target.
# e.g. for arm : ../source-builder/sb-set-builder --prefix=/opt/rtems/5 5/rtems-arm
-
You may need the texinfo package, which can be installed by executing sudo apt-get install texinfo or a similar command.
-
If the environment is not correctly set up, there might be missing Ubuntu dependencies. Run the following command to install the packages:
sudo apt install build-essential g++ gdb unzip pax bison flex texinfo python3-dev python-is-python3 libpython2-dev libncurses5-dev zlib1g-dev ninja-build pkg-config libgmp-dev libmpfr-dev -
If build fails with the message
prefix is not writable: /opt/rtems/5
, run again with
sudo. For more info check https://docs.rtems.org/branches/master/user/start/prefixes.html .
AIR configuration requires python-mako. If it is not installed, execute the following commands (for Debian):
sudo apt-get install python3-mako
sudo apt install python3-tk
sudo apt install python3-venv
Clone AIR repo for example in /home/taste/work/
NOTE: Current templates used by the Configurator do not support most recent versions of mako. In case any templating issues are encountered, it's suggested to install a specific supported version. This can be achieved by running the following command:
python3 -m pip install Mako==1.1.3
Add the air_repo/air to the PATH environment variable. We recommend doing it the following way in the .bashrc file:
export AIR=/home/taste/work/AIR/air
export PATH=$PATH:$AIR
Clone the AIR repository from https://github.com/air-gmv/air.git.
The RTEMS 5 toolchain should be in the PATH, for example:
export PATH=$PATH:/opt/rtems/5/bin
The board support package depends on the chosen architecture:
- SPARC
- laysim_gr740
- leon4
- leon3_or_tsim2
- tsim
- ARM
- zynqz1
Floating Point Unit option can be enabled/disabled.
AIR supports the following paravirtualized RTOS versions:
- RTEMS 4.8i (Edisoft)
- RTEMS 5
- POSIX RTEMS 5
- BARE OS (Metal-bare)
The paravirtualized RTOS and AIR GUI for AIR are obtained via git submodules.
To use the AIR RTEMS 5 version and AIR GUI, please execute the following commands in the root folder of the repository:
git submodule init air/pos/rtems5
git submodule init air/tools/air-gui
git submodule update
Do the following step: On air_repo/air execute
./configure
Alternatively, an alpha version of AIR GUI is available. To access it, execute the following command in the air_repo/air/tools/air-gui/ directory: ./launch.sh
The configurator interface will prompt the user for options (architecture, BSP, FPU, Cache, Debugger, RTOS). For example:
- Press 0 for sparc
- Press 2 for leon4
- Press 0 for fpu enabled
- Press 0 for GRMON
- Press 1 to install all RTOS
After configurator finishes execute:
make clean
make
Go to any example inside air_repo/air/examples
Execute
../../configure
This will generate the makefiles taking the XML configuration file as input.
It generates a parent makefile and then a makefile per partition inside the respective partition folder.
Executing
make all
will create the respective binary in the created executables folder.
Since configurator v4.3 the RTOS paravirtualized versions are obtained via git submodules. Pulling new AIR content into old AIR repo will generate conflicts. To get a new clean AIR repo please execute (please backup any working folder)
git fetch
git reset origin/master --hard
Further information email air-product@gmv.com
Users can submit issues on github, where they can follow development team addressing them. Github address: https://github.com/air-gmv/air The development team addresses internally in a closed gitlab platform, sometimes associated gitlab links are provided.
Email to airproduct@gmv.com