Search code examples
c++linuxpipmbedarmcc

Path to GCC_ARM (mbed_settings.py)


I've just started to use mbed API, and every time I'm trying to compile my project this happen

P.S. I'm on arch Linux

usage: make.py [-h] [-m MCU] [-t TOOLCHAIN] [--color] [--cflags CFLAGS]
               [--asmflags ASMFLAGS] [--ldflags LDFLAGS] [-c]
               [--profile PROFILE] [--app-config APP_CONFIG] [-p PROGRAM]
               [-n PROGRAM] [-j JOBS] [-v] [--silent] [-D MACROS]
               [-S [{matrix,toolchains,targets}]] [-f GENERAL_FILTER_REGEX]
               [--automated] [--host HOST_TEST] [--extra EXTRA]
               [--peripherals PERIPHERALS] [--dep DEPENDENCIES]
               [--source SOURCE_DIR] [--duration DURATION] [--build BUILD_DIR]
               [-N ARTIFACT_NAME] [-d DISK] [-s SERIAL] [-b BAUD] [-L] [--rpc]
               [--usb] [--dsp] [--testlib] [--build-data BUILD_DATA]
               [-l LINKER_SCRIPT]
make.py: error: Could not find executable for GCC_ARM.
Currently set search path: /usr/bin/arm-none-eabi-gcc
[mbed] ERROR: "/usr/bin/python2" returned error code 2.
[mbed] ERROR: Command "/usr/bin/python2 -u /home/mathieu_auclair/Desktop/git/IsolightProject/.temp/tools/make.py -t GCC_ARM -m K64F --source . --build ./BUILD/K64F/GCC_ARM" in "/home/mathieu_auclair/Desktop/git/IsolightProject"
---

I've seen this post: mbed CLI: make.py: error: Could not find executable for ARM but I don't have any idea of what the path is suppose to be... This is my setting file:

"""
mbed SDK
Copyright (c) 2016 ARM Limited

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
"""

from os.path import join, abspath, dirname

#ROOT = abspath(join(dirname(__file__), "."))

##############################################################################
# Build System Settings
##############################################################################
#BUILD_DIR = abspath(join(ROOT, "build"))

# ARM
#ARM_PATH = "C:/Program Files/ARM"

# GCC ARM
GCC_ARM_PATH = "/usr/bin/arm-none-eabi-gcc"

# GCC CodeRed
#GCC_CR_PATH = "C:/code_red/RedSuite_4.2.0_349/redsuite/Tools/bin"

# IAR
#IAR_PATH = "C:/Program Files (x86)/IAR Systems/Embedded Workbench 7.0/arm"

# Goanna static analyser. Please overload it in private_settings.py
#GOANNA_PATH = "c:/Program Files (x86)/RedLizards/Goanna Central 3.2.3/bin"

#BUILD_OPTIONS = []

# mbed.org username
#MBED_ORG_USER = ""

This question might be simple to you, but I'm just starting so please just help me...

[UPDATE]

I was trying things and I tried to manually to launch the compiler and this happened:

COMMAND

/usr/bin/python2 -u /home/mathieu_auclair/Desktop/git/IsolightProject/.temp/tools/make.py -t GCC_ARM -m k64f --source . --build ./BUILD/K64F/GCC_ARM

OUTPUT

htProject/.temp/tools/make.py -t GCC_ARM -m k64f --source . --build ./BUILD/K64F/GCC_ARM 
Building project IsolightProject (K64F, GCC_ARM)
Scan: .
Scan: env
Scan: mbed
Compile [  3.6%]: BLEInstanceBase.cpp
[Fatal Error] stdint.h@9,16: stdint.h: No such file or directory
[ERROR] In file included from ./BLE_API/ble/BLEProtocol.h:21:0,
                 from ./BLE_API/ble/Gap.h:20,
                 from ./BLE_API/ble/BLE.h:21,
                 from ./BLE_API/source/BLEInstanceBase.cpp:17:
/usr/lib/gcc/arm-none-eabi/7.1.0/include/stdint.h:9:16: fatal error: stdint.h: No such file or directory
 # include_next <stdint.h>
                ^~~~~~~~~~
compilation terminated.

I'll try to figure out what is stdint.h, that must be the problem, I'll make an update on what happened with that!


Solution

  • I've fixed my problem by installing these 2 repositories + my cmake was on pip3 strangely. It had install cmake with pip3 rather than pip2 since python3 is the main python on arch linux.

    • arm-none-eabi-newlib
    • avr-libc

    here's the link that made me fix my problem:

    arm-linux-gnu-gcc fatal error: stdio.h: No such file or directory