This post is older than 2 years and might not be relevant anymore
More Info: Consider searching for newer posts

Toolchain installation

Hi,

I used the command line to install the toolchains as follows:

sudo apt install gcc-arm-none-eabi

It then installed version 9.3.1 of the tools on my Linux ubuntu system.

When I build my application, I got an error from file:

…./gcc-arm-none-eabi-9-2020-q2-update/arm-none-eabi/include/c++/9.3.1/utility

 

#include <bits/c++config.h> was not found.

This same code built successfully on another virtual box.

One difference is that I was using tools version 7.3.1 and now my command line installation installed version 9.3.1 for me.

Examining some directories show that there maybe and most likely some files are missing.

Compare this directory from one setup to the other (9.3.1 and 7.3.1):

9.3.1:

.....9.3.1/arm-none-eabi/thumb/v7e-m directory has sub-directory: nofp ( ONLY)

7.3.1:

.....7.3.1/arm-none-eabi/thumb/v7e-m directory has sub-directories: bits ext fpv4-sp fpv5

.....

I am guessing that I need to do some more installation to get the proper software installed.

Any hint on how to fix this would be greatly appreciated.

Thanks.

 

  • I used the command line to install the toolchains as follows:

    sudo apt install gcc-arm-none-eabi

    It then installed version 9.3.1 of the tools on my Linux ubuntu system.

     The most recent version included in the Ubuntu apt repository is 6.3.1 as far as I know, so I think that when compiling you are not using the package manager version but the one you downloaded to the /home/francis/gcc_arm_compiler/gcc-arm-none-eabi-9-2020-q2-update/ folder? So you have to figure out which versions you want to use. You should either remove the version in your home folder from the PATH variable, or you should remove the package manager version: sudo apt remove gcc-arm-none-eabi.

    I would suggest to try this:

    sudo apt remove gcc-arm-none-eabi
    export GNUARMEMB_TOOLCHAIN_PATH="/home/francis/gcc_arm_compiler/gcc-arm-none-eabi-9-2020-q2-update"
    export PATH="/home/francis/gcc_arm_compiler/gcc-arm-none-eabi-9-2020-q2-update/bin:$PATH"
    source <NCS_FOLDER>/zephyr/zephyr-env.sh

    You can add the last three lines to your ~/.bashrc file to set them permanently.

    You can check if arm-none-eabi-gcc points to the correct binary with the whereis command

    whereis arm-none-eabi-gcc
Related