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

Trouble with Keil MDK-ARM, probably with CMSIS files.

I have trouble compiling successfully even the simplest of example codes for the nRF51822 with the Keil MDK-ARM toolchain (v5).

For example, for the "blinky" project, I get the following console output:

Build target 'nrf51822_xxaa (256K)' Clean started - Project: 'blinky' deleting intermediate output files for target 'nrf51822_xxaa (256K)' creating preprocessor file for main.c... compiling main.c... assembling startup_arm_nrf51.s... creating preprocessor file for system_nrf51.c... compiling system_nrf51.c... creating preprocessor file for nrf_delay.c... compiling nrf_delay.c... linking... ._build\blinky_arm.axf: error: L6002U: Could not open file ._build\main.o: No such file or directory Not enough information to produce a FEEDBACK file. Finished: 1 information, 0 warning, 0 error and 1 fatal error messages. "._build\blinky_arm.axf" - 1 Error(s), 0 Warning(s).

The thing is that two files do not get translated into .o files: nrf_delay.c and main.c (in the error message above, the file-not-found error shows up for main.o).

I tried to figure our why the compiler would not produce any output for these two files. The problem is not with any path settings. Finally, it seems that when I exclude "core_cm0.h" from the includes of both files, the files get translated into .o code. However, this is obviously not a viable work-around.

Is there any know problem with the CMSIS files that come with MDK-ARM? Could this problem be related somehow to my specific Windows XP, SP3 machine? I am running out of ideas here.

Some time ago, I had installed a complete toolchain MDK-ARM 4.xx, which was working fine from the start at that time. Therefore, being tired with MDK-ARM v5, I removed it and replaced it with MDK-ARM v4.73, currently still available from the Keil website. The problem turned out to be the same.

I also tried to compile other example projects as well, the result is always the same. All files that make reference to "core_cm0.h" do not get translated to object code.

I would be grateful for any input !

Best, Severin

Parents
  • I can't say I've heard about this particular problem before, but I'd recommend you to check two things:

    1. That the ARM::CMSIS pack is installed, as shown in the attached screenshot.
    2. That you have reinstalled the nRF51 SDK after having installed Keil again. The SDK installer places some files inside the Keil folder structure, that might cause problems if have been removed.

    keil-packs.png

Reply
  • I can't say I've heard about this particular problem before, but I'd recommend you to check two things:

    1. That the ARM::CMSIS pack is installed, as shown in the attached screenshot.
    2. That you have reinstalled the nRF51 SDK after having installed Keil again. The SDK installer places some files inside the Keil folder structure, that might cause problems if have been removed.

    keil-packs.png

Children
No Data
Related