Closed phonnakasturi-apple closed 1 year ago
@phonnakasturi-apple does this run into the same issue for you?
scripts/examples/nrfconnect_example.sh lighting-app nrf52840dk_nrf52840
It looks like your linked binary ended up too big to fit on the chip you are building for, which is a little surprising given that we do build pretty much this configuration (but with RPC additionally enabled) in CI.
I'm able to build this target locally on Linux (I don't have mac to verify it for darwin). Generally the region that was overflown should be occupied in almost 100% (99,33% in my case). I assume something may be configured wrong in the local environment, so e.g. different toolchain version than recommended is used and target is linked in slightly different way. @phonnakasturi-apple could you attach the full log from the build and not only the failure part? I will try to compare some details with my own configuration.
@bzbarsky-apple With scripts/examples/nrfconnect_example.sh lighting-app nrf52840dk_nrf52840 ; I ran into the same issue.
Attaching the complete log ; nordic_issue.txt
@kkasperczyk-no Here is the complete log;
@bzbarsky-apple @kkasperczyk-no I see the same issue with lighting app while all-cluster-app builds fine with the same SHA using the above script.
@cjandhyala that's understandable, because by default all-clusters-app is built with OTA Software Update disabled and lighting-app with OTA support enabled. The problem you see is related to the fact of overflowing the region reserved for bootloader that is used for the software update purpose, so that's why it won't be reproduced for all-clusters-app.
Hi, looks like the flash overflow issue occurs on gcc 9.2.1 (and perhaps other 9 minor revisions). We'll try to optimize the flash usage in the future so that the build success doesn't depend so much on the used toolchain, but, anyway, newer versions of Zephyr (and hence nRF Connect SDK) will require using Zephyr-SDK toolchain rather than arm-none-eabi-gcc
so I recommend that you update your scripts to use that toolchain as described in: https://developer.nordicsemi.com/nRF_Connect_SDK/doc/latest/nrf/gs_installing.html#install-a-toolchain.
Btw, CI uses Pigweed-supplied GCC 10.3.1 and currently, it seems to be also sufficient.
we are running 'python3 scripts/setup/nrfconnect/update_ncs.py --update ' and we have the latest zephyr SDK
=== updating zephyr (zephyr): HEAD is now at 8689324605 [nrf fromtree] drivers: spi: fix sample syntax
BTW updating the arm GNU compiler to latest , we are able to build the lighting app. Is there any issue in using the latest compiler or do you recommend some version of it ?
We will soon update supported nRF Connect SDK in Matter and from that moment we will require using Zephyr-specific toolchain described in the documentation that I attached in the previous message.
Reproduction steps
Bug prevalence
Today
GitHub hash of the SDK that was being used
49654486db9ae006f5c9e2fc89b59c622ad614dd
Platform
nrf, python
Platform Version(s)
Darwin
Anything else?
No response