Important changes to forums and questions
All forums and questions are now archived. To start a new conversation or read the latest updates go to forums.mbed.com.
6 years, 4 months ago.
Cannot build mbed-os with NRF52840_DK
I am using the build.py tool to build the mbed-os library with the NRF52840_DK board and GCC_ARM compiler.
After invoking <<code>> python build.py -t gcc_arm -m nrf52840_dk <</code>>
, the header files were copied, however, there was an error when compiling.
Is there a fix for this?
fatal error: objects_cryptocell.h: No such file or directory
Scan: TARGET_NRF52840_DK Compile [ 1.2%]: mbed_tz_context.c Compile [ 2.4%]: startup_NRF52840.S Compile [ 3.6%]: cmsis_nvic.c Compile [ 4.8%]: PeripheralPinsDefault.c Compile [ 6.0%]: system_nrf52840.c Compile [ 7.1%]: PeripheralPins.c Compile [ 8.3%]: critical_section_api.c Compile [ 9.5%]: analogin_api.c [Fatal Error] objects.h@58,10: objects_cryptocell.h: No such file or directory In file included from ../mbed-os/BUILD/mbed/TARGET_NRF52840_DK/TARGET_NORDIC/TARGET_NRF5x/TARGET_NRF52/TARGET_MCU_NRF52840/TARGET_NRF52840_DK/device.h:36:0, from ../mbed-os/BUILD/mbed/hal/analogin_api.h:22, from ../mbed-os/targets/TARGET_NORDIC/TARGET_NRF5x/TARGET_NRF52/analogin_api.c:18: ../mbed-os/BUILD/mbed/TARGET_NRF52840_DK/TARGET_NORDIC/TARGET_NRF5x/TARGET_NRF52/objects.h:58:10: fatal error: objects_cryptocell.h: No such file or directory #include "objects_cryptocell.h" ^~~~~~~~~~~~~~~~~~~~~~ compilation terminated. Completed in: (1.76)s Build failures: * GCC_ARM::NRF52840_DK
1 Answer
6 years, 4 months ago.
Hi,
If you are using the Mbed CLI, please use the following command to build your program within its root directory: mbed compile -t gcc_arm -m nrf52840_dk --clean
Also, please make sure you are on the most recent version of mbed-os using the following Mbed CLI commands within your project directory:
cd mbed-os mbed update latest
Please let me know if you have any questions!
- Jenny, team Mbed
If this solved your question, please make sure to click the "Thanks" link below!
Running the build.py
script from the tools directory within Mbed OS will not work as it will not grab the board's separate features including cryptocell.
- Jenny, team Mbed
posted by 18 Jul 2018Hi Jenny,
I am trying to build mbed-os library itself in order to make edits to library. I created a fork of the mbed-os repository [https://github.com/ARMmbed/mbed-os] and cloned it in my working directory. I followed an old documentation: https://os.mbed.com/teams/SDK-Development/wiki/Mbed-SDK-build-script-introduction in order to generate a build of the mbed-os library.
git clone https://github.com/ARMmbed/mbed-os cd mbed-os/tools python build.py -t gcc_arm -m nrf52840_dk
I tested the build.py script with the nrf51_microbit and the kl25z and both were able to build the mbed-os. Once the mbed-os library is built, a new directory called BUILD is created inside mbed-os.
cd mbed-os/BUILD cd mbed
Inside this mbed, the library is built and the .o files are generated. However, this failed for the nrf52840_dk with the above error. If build.py is not the way to build mbed-os itself, then how can I build mbed-os?
posted by 19 Jul 2018You can make edits to Mbed OS itself and still use mbed compile
, the Mbed CLI will use the Mbed OS library files present in your project, so you can still alter Mbed OS and mbed compile
will see and compile those changes.
- Jenny, team Mbed
posted by 19 Jul 2018That Mbed SDK build script link is also extremely old and is written for Mbed OS 2 and 3, not Mbed OS 5 (the latest version).
- Jenny, team Mbed
posted by 19 Jul 2018Make changes to your own copy of Mbed OS within another program like mbed-os-example-blinky and then use mbed compile -t gcc_arm -m nrf52840_dk --clean
to build Mbed OS.
- Jenny, team Mbed
posted by 19 Jul 2018