• Ahh - the issue might be that provision.sh is installing the x86 build of gcc-arm-none-eabi?

    What happens if you just run:

    /home/nodejs/efeu/tools/gcc-arm-none-eabi-8-2018-q4-major/bin/arm-none-eabi-gcc --version
    

    It should display something like:

    arm-none-eabi-gcc (GNU Tools for Arm Embedded Processors 8-2018-q4-major) 8.2.1 20181213 (release) [gcc-8-branch revision 267074]
    Copyright (C) 2018 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.
    

    But if it fails, it's probably because you need an arm compiler build.

    There is an ARM64 (aarch64) build available at https://developer.arm.com/tools-and-software/open-source-software/developer-tools/gnu-toolchain/gnu-rm/downloads but I think the standard Pi OS is still 32bit.

    So you could try installing a 64 bit OS: https://www.raspberrypi.org/forums/viewtopic.php?t=275370 or it does seem possible to compile arm-none-eabi-gcc from scratch on the Pi.

    Others suggested you could actually just use the Pi's own GCC (since it's ARM anyway) but I'm not sure if it's quite good enough for embedded.

  • Others suggested you could actually just use the Pi's own GCC (since it's ARM anyway) but I'm not sure if it's quite good enough for embedded.

    debian on pi has gcc-arm-none-eabi which on latest buster version is this

    gcc version 7.3.1 20180622 (release) [ARM/embedded-7-branch revision 261907] (15:7-2018-q2-6) 
    

    so is reasonably fresh (?), then provision says

    pi@raspberrypi:~/Espruino $ scripts/provision.sh MDBT42Q
    Provision BOARDNAME = MDBT42Q
    Provision FAMILY = NRF52
    ===== NRF52
    ===== ARM
    arm-none-eabi-gcc installed
    

    however when I just checked out Espruino and tried to build for MDBT42Q it breaks on

    JSON PARSE FAILED for {
      "type" : "event",
      "class" : "E",
      "name" : "touch",
      "params" : [
        ["x","int","X coordinate in display coordinates"],
        ["y","int","Y coordinate in display coordinates"],
        ["b","int","Touch count - 0 for released, 1 for pressed"],
      ]
    } - No JSON object could be decoded
    make: *** [Makefile:744: gen/jswrapper.c] Error 1
    make: *** Waiting for unfinished jobs....
    
    

    it always builds few files and then gives this but next time it is building another couple of sources and still gives this same error

    now tried building for PICO_R1_3 = stm32 and having same json parsing error, so is the tree broken now or do I perhaps miss some json related package?

About

Avatar for Gordon @Gordon started