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

Cannot get Eddystone example to compile SDK15 pca10040e

I am using Keil 5.24.2

I already downloaded and compiled with build_all the micro_ecc. Having no issues here.

According to the error, and what I read in another thread, the FP flag in the library must be on. This is happening also if I compile the example from SDK 14.2.0. I suspect that having installed the new MDK 8.16.0 is causing this.

How can I fix it?

Thanks!!!

.\_build\nrf52810_xxaa.axf: Error: L6366E: occ_mod25519_base.s.obj attributes are not compatible with the provided attributes .
Object occ_mod25519_base.s.obj contains Build Attributes that are incompatible with the provided attributes.
Tag_FP_arch = VFPv4 instructions were permitted, but only citing registers D0-D15 (=6)
Tag_ABI_HardFP_use = This code should execute on the single-precision variant derived from Tag_FP_arch (=1)
Tag_FP_HP_extension = Use of the optional half-precision extension to VFPv3/Advanced SIMDv1 was permitted (=1)
.\_build\nrf52810_xxaa.axf: Error: L6366E: occ_bigint256.s.obj attributes are not compatible with the provided attributes .
Object occ_bigint256.s.obj contains Build Attributes that are incompatible with the provided attributes.
Tag_FP_arch = VFPv4 instructions were permitted, but only citing registers D0-D15 (=6)
Tag_ABI_HardFP_use = This code should execute on the single-precision variant derived from Tag_FP_arch (=1)
Tag_FP_HP_extension = Use of the optional half-precision extension to VFPv3/Advanced SIMDv1 was permitted (=1)
.\_build\nrf52810_xxaa.axf: Error: L6366E: occ_constant_time.s.obj attributes are not compatible with the provided attributes .
Object occ_constant_time.s.obj contains Build Attributes that are incompatible with the provided attributes.
Tag_FP_arch = VFPv4 instructions were permitted, but only citing registers D0-D15 (=6)
Tag_ABI_HardFP_use = This code should execute on the single-precision variant derived from Tag_FP_arch (=1)
Tag_FP_HP_extension = Use of the optional half-precision extension to VFPv3/Advanced SIMDv1 was permitted (=1)

  • Hi Antonio. The problem is that the Oberon library is built with some assembly files using FPU instructions. I have a build that fixes this on my desk, but we need to test it properly before we can share it. Unfortunately, there has been some delays due to unforeseen events, but I expect we will provide a fixed Oberon library build soon.

  • Please use the attached nrf_oberon library build. It fixes the issue with floating point instructions being used in the "no_fp_short_wchar" files that is part of SDK 15.0.0 (used by Keil and IAR version <= 7 for nRF52810 targets).

    You can extract the nrf_oberon_2.0.5.zip in <SDK_15.0.0>\external\nrf_oberon. Please note that the revision number has changed (2.0.4 -> 2.0.5) so you must also update the file name in your Keil project, which you can find under the nRF_Oberon_Crypto virtual folder. This .zip has the same license as the nrf_oberon library in the SDK, and the licence file is included in the zip in the same directory as the library files.

    (There is no functional change in this library, so there is no reason to update for customers not using Keil or IAR 7 to build for nRF52810.)

    nrf_oberon_2.0.5.zip

Related