What does this mean? This is what I get when I try to build the PX4 from the terminal now.
It worked fine the first time. But then I had to run another script to install a different version of the arm-gcc. I tried to restore things by running the ubuntu_sim_nuttx.sh script. This is what I got from it:
.
.
E: Unable to locate package gdb-arm-none-eabi
E: Unable to locate package gcc-arm-embedded
Installing GCC to: /home/safat/gcc-arm-none-eabi-7-2017-q4-major
GCC already installed.
RESTART YOUR COMPUTER to complete installation of PX4 development toolchain
Then I rebooted my machine and checked the arm-gcc version:
~$ arm-none-eabi-gcc --version
arm-none-eabi-gcc (GNU Tools for ARM Embedded Processors) 5.4.1 20160919 (release) [ARM/embedded-5-branch revision 240496]
Copyright (C) 2015 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
How is that possible if the ubuntu_sim_nuttx.sh script supposedly removed the old toolchain and installed the correct version? Just to see what happens, I tried to build the PX4:
You need to make sure your PATH variable is set correctly. I suggest that you do echo $PATH to see what it is set to and then open ~/.profile and check your entries there.
If you find older entries (e.g. gcc 5.4.1) you can remove these lines.
$ make px4_fmu-v5_default
ninja: no work to do.
I suggest you try make clean and try to build again to see more output.
When I open ~/.profile with gedit, this is what I see:
# ~/.profile: executed by the command interpreter for login shells.
# This file is not read by bash(1), if ~/.bash_profile or ~/.bash_login
# exists.
# see /usr/share/doc/bash/examples/startup-files for examples.
# the files are located in the bash-doc package.
# the default umask is set in /etc/profile; for setting the umask
# for ssh logins, install and configure the libpam-umask package.
#umask 022
# if running bash
if [ -n "$BASH_VERSION" ]; then
# include .bashrc if it exists
if [ -f "$HOME/.bashrc" ]; then
. "$HOME/.bashrc"
fi
fi
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/.local/bin" ] ; then
PATH="$HOME/.local/bin:$PATH"
fi
export PATH=/home/safat/gcc-arm-none-eabi-7-2017-q4-major/bin:$PATH
Does this seem alright? I only see an entry for version 7!
As I’ve said before, I see version 5.4.1 when I check arm-none-eabi-gcc version on terminal.