After reading the announcement that Keil now has a community edition of MDK, I downloaded and installed it and got a license to activate it.
I'm creating a project for an Infineon XMC4700 MCU (this is an ARM Cortex-M4). I've got a J-Link connected to the dev board (and this combination works with Infineon's DAVE IDE just fine). When I try to start debugging my application with Keil MDK I get this message:
Error: Cannot load driver 'C:\Keil_v5\ARM\Segger\JL2CM3.dll'.Possible Reasons: - Driver DLL could not be found in the specified path - Driver DLL requires additional DLL's which are not installed - Required Hardware Drivers are not installed Debugger aborted !
The file C:\Keil_v5\ARM\Segger\JL2CM3.dll does exist.
How do I get past this issue? How do I determine which, if any, additional DLL's are required to debug with a J-Link? I do have the Segger J-Link support software installed in the default location. Do I need to tell Keil where to find it? If so, how?
(Note: I don't have DAVE running at the same time as Keil MDK.)
Can you please launch Keil MDK with admin rights - is there some difference?
I installed Keil MDK as admin and ran it that way too. It's fixed now. I apparently had a version of Keil MDK v4 installed years ago that I uninstalled. I'm speculating that the uninstall of v4 left some files behind that affected my install of v5. I manually deleted all of the files and re-installed v5 and now debugging is working.
One other thing I noticed... I downloaded the pack for the Infineon XMC4000 series MCU from the Keil website, but when I tried to install it with the package manager I got an error stating the license agreement was not formatted correctly and it wouldn't install. I had to install an earlier version of this pack, which installed successfully.