How to get cross CIF for building LiteOS

Instructions below are for Ubuntu 18.04. You may need some changes for other versions of Ubuntu.

Install prerequisites:

$ sudo apt-get install autoconf automake libtool libexpat1-dev libncurses5-dev bison flex patch texinfo build-essential gawk gperf help2man libtool-bin

Get cross CIF

You can either download an archive with cross CIF prepared in advance from here or follow the next steps.

Build CIF as usual. Below it is assumed that CIF sources and build files are within directory ~/cif.

Build crosstool-ng. Download the ZIP archive from to the home directory. At the moment of writing this document the corresponding pull request was not accepted yet. Extract the ZIP archive. After that go to directory ~/crosstool-ng-newlib_nano_variant and execute the following commands:

$ ./bootstrap
$ ./configure --enable-local
$ make

Build cross CIF:

$ mkdir ~/cif/build/cross

Download file .config into ~/cif/build/cross. Replace username novikov with your one if necessary within ~/cif/build/cross/.config.
$ ~/crosstool-ng-newlib_nano_variant/ct-ng build

Get and build LiteOS

$ git clone
$ cd ~/LiteOS/targets/Cloud_STM32F429IGTx_FIRE/GCC

Perhaps you need to replace username novikov with your one (if you downloaded and extracted an archive with cross CIF somewhere outside ~/x-tools, you need to fix the whole path appropriately):
$ export PATH=$PATH:/home/novikov/x-tools/arm-unknown-eabihf/bin
$ make


At the moment this manual does not describe how to get cross CIF but just how to get cross Aspectator (GCC) for building LiteOS. There is little sense to get cross CIF without integration it within Clade or/and Klever since CIF has a specific API that does not allow to use it as a compiler replacement.

Updated by Evgeny Novikov over 3 years ago · 7 revisions