Hi,
After I updated Keil from uVersion 5.37.0 to 5.40.0, I got the following error:
Build started: Project: FPIE-4K*** Using Compiler 'V5.06 update 2 (build 183)', folder: 'C:\Keil_v5\ARM\ARMCC\Bin'Build target 'FPIE'compiling Exec.c...C:\Keil_v5\ARM\CMSIS\6.1.0\CMSIS\Core\Include\cmsis_compiler.h(287): error: #35: #error directive: Unknown compiler. #error Unknown compiler.Exec\Exec.c: 0 warnings, 1 errorcompiling System.c...C:\Keil_v5\ARM\CMSIS\6.1.0\CMSIS\Core\Include\cmsis_compiler.h(287): error: #35: #error directive: Unknown compiler. #error Unknown compiler.Control\System.c: 0 warnings, 1 error
I'm compiling the same project (FPIE-4K) with 5.40.0 as I did with 5.37.0.
Any suggestion on the compile error?
Thanks
David
Hello,
I see you are using CMSIS v6 components. These do not support Arm Compiler 5.
CMSIS v6 is here
You should go back to an earlier version, else (better) upgrade to Arm Compiler for Embedded 6.
Hi Ronan,
Thank you for the response to my question.
I was using Keil MDK 5.37 for a couple of year without any issue.
I recently updated Keil to 5.40. After that, when I compiled some old projects (that were developed under Keil 5.37), I got these errors.
It seems Keil 5.40 installer created a new folder, C:\Keil_v5\ARM\CMSIS\6.1.0, and Keil 5.40 forced the compiler to use the new folder .
If I selected ‘Use default compiler version 6’ under ARM Compiler / Option For Target in Keil/uVision IDE, I got a lot more compile errors.
I have both ARM Compiler 5 and 6 in uVision IDE.
I felt somehow Keil 5.40 installer mixes ARM Compiler 5 and 6.
How do I go back to use ARM Compiler 5?
Arm Compiler 5 is no longer installed by default, but can be downloaded and installed separately. See instructions at:
https://developer.arm.com/documentation/ka005073
To change the version of the pack(s) used, open Manage Run Time Environment, and click on Select Packs.
Then deselect "use latest versions", and you can select particular versions.
I do recommend you migrate to the latest software and compiler over time. Arm Compiler 5 is no longer supported or maintained.
I followed your post (due to a legacy code issue tat was compiled against Arm Compiler 5) but the option to change the CMSIS version is no longer available. I either have "latest - fixed -exclude" options but no way to change the version.
When you expand the tree you will see all installed versions
I just changed to version 5 from version 6, now compiling fine from Ronan's screenshot, just toggle to fixed, expanded the tree and checked the box for version 5.
Cheers.