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

Failing in build when changing directory structure

I'm building wih Keil MDK-Lite Version 5.24.1 and I just copied the examples for gpiote into my own folder, everything was kept the same (ie copying from C:\Nordic\nRF5_SDK_14.0.0\examples\peripheral\gpiote to C:\MySourceCode\gpiote)

I have fixed the include path by updating the gpiote_pc10040.uvprojx path. Inside Keil's MDK when I show include file dependencies, everything looks correct.

When I build, I got the following error: ._build\nrf52832_xxaa.axf: Error: L6218E: Undefined symbol app_error_fault_handler (referred from app_error.o)

image description

From the file, I can see that the app_error.c inside Group nRF_Libraries can't find sdk_config.h, although on the left hand menu seems it was able to resolve the location of the file (no warning message).

Any thought where else I need to update for path changes? Code is exactly the same as the original, except project path changes.

Thanks, Kunta

  • Hi Kunta,

    Is there a reason why you want to change the location of the gpiote folder? I think there could be an issue with where you copied the files. Does the source code work when you leave in in the nrf5_SDK_14.0.0 folder? I believe you need to keep the folder in the sdk/examples/peripheral folder. If you want to change gpiote, you can just make a new project folder in the peripheral folder. Hope that helps!

  • Hi Bjørn, I'm trying to learn about how gpiote work, so I thought copying the whole directory structure is the easiest one to do before I have to start my own code from scratch. Yes, it was working in the original folder. It seems it has nothing to do about can't find sdk_config.h, as I found out later that even in the original folder it has that message. Probably just a warning then. I did find out that Keil can 'copy' from the Pack Examples, and it will be able to install the example files in a folder of my choice and will work. But I got stuck again with the need to modify further the code and including other libraries (such as the nrf_sdh_bleh.h or the nrf_log_ctrl.h and I can't figure out how to update the project to include the header file that wasn't there in the first place. Ok, maybe a question for Keil forum group.

  • That didn' work either. I found out the Keil's template code bring some code in the RTE folder that failed to compile, maybe in conjunction of the SDK v14, although I'm not sure. I'm going to try to switch to use mbed instead of Keil.

Related