@kerryzhou Great, but what if I want to add some component later-on and the conflicts pops up? Starting over from some sample that builds may not be a viable option.
There is apparently a naming conflict between
../component/osa/fsl_os_abstraction_bm.c:86:31
typedef task_control_block_t *task_handler_t;
and
../component/osa/fsl_os_abstraction_free_rtos.h:77:22:
typedef TaskHandle_t task_handler_t;
The only sane solution is to fix the name conflict, by renaming one or the other type, and reissue the SDK.
Since the first declaration above seems to be local (inside a .c file) it may be best to rename this one as the name change won't spill.
A better name for a pointer to a task_control_block_t could be ptask_control_block_t, thus the typedef could become
typedef task_control_block_t *ptask_control_block_t;
then all instances of task_handler_t in that file should be renamed to ptask_control_block_t.