This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Problem building RTX5 for Cortex-M4F with ARM Compiler v5

I have recently tried to create my first project using RTX5. I believe I have the basic pieces set up correctly, but when I try to build the projects I get errors building rtx_kernel.c

compiling rtx_kernel.c...
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.0.1\CMSIS\RTOS2\RTX\Source\rtx_kernel.c(31): error:  #29: expected an expression
  { .os_id = osRtxKernelId, .version = osRtxVersionKernel, .kernel.state = osRtxKernelInactive };
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.0.1\CMSIS\RTOS2\RTX\Source\rtx_kernel.c(31): error:  #29: expected an expression
  { .os_id =
sRtxKernelId, .version = osRtxVersionKernel, .kernel.state = osRtxKernelInactive };
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.0.1\CMSIS\RTOS2\RTX\Source\rtx_kernel.c(31): error:  #29: expected an expression
  { .os_id =
sRtxKernelId, .version =
sRtxVersionKernel, .kernel.state = osRtxKernelInactive };
C:\Keil_v5\ARM\PACK\ARM\CMSIS\5.0.1\CMSIS\RTOS2\RTX\Source\rtx_kernel.c: 0 warnings, 3 errors

It seems (according to the uVision error markers) that these errors are actually caused by issues in rtx_lib.h which in turn are caused by issues in core_cm.h on lines related to exclusive access. The first of the problem lines is at line 765:

static __asm    uint8_t atomic_wr8 (uint8_t *mem, uint8_t val) {

Floating over the error indicator in uVision shows:

error: expected identifier or '('

The __asm keyword is underlined in the editor so I assume this is the issue, but this construct is supposed to be a supported use of the __asm keyword in ARM Compiler v5 so I'm not sure what the problem is.

I'm using compiler 5.06u3, CMSIS CORE 5.01, CMSIS-RTOS2 5.10 (Source).

Has anyone else successfully built RTX5 for CM4F using ARM Compiler v5?

Thanks,
Keith