Hello,
we have an existing C-Multi-Project. One project for board specific implementation, one project for "kernel" implemenation and one for the application. The board and kernel project are compiled to a library and included in the application project which generates the hex-file when compiling.
Till now we used the Compiler Version 5.06. Now i wanted to update to Compiler Version 6.12. I got some Warnings and Errors and corrected them. Now there's one last error and i couldn't find a solution for it...
The error message is:
.\Objects\application_bang2.axf: Error: L6218E: Undefined symbol __libc_fini_array (referred from rtx_conf_cm.o)..\Objects\application_bang2.axf: Error: L6218E: Undefined symbol __libc_init_array (referred from rtx_conf_cm.o).Not enough information to list image symbols.Not enough information to list load addresses in the image map.
The Target is STM32L4A6RGTx, uVision V5.28, we DON'T use the microlib, language C is C99, language C++ is c++11 (but we use no C++ in our project), the Keil RTX is also included as library (RTX_CM4.lib).
I already did a lot of internet research, but didn't find a solution or the root cause of the problem. Often i read that libc_init_array initializes C++ objects at startup, but we don't use any C++ in our project...
Has anyone an idea in which direction i should search or had similiar problems?
Thanks for your help in advance!
Kr Patrick
Hi PatrickI would like to correct my previous response.The CMSIS RTOS-1 (starting from v4.81) and CMSIS RTOS-2 APIs are compiler independant and thus should be supported with both AC5 and AC6