Hi, I encounter the following issue during compilation of my real-time test example
uv3Test.axf: Error: L6218E: Undefined symbol os_active_TCB (referred from rt_task.o). uv3Test.axf: Error: L6218E: Undefined symbol os_alloc_TCB (referred from rt_task.o). uv3Test.axf: Error: L6218E: Undefined symbol os_free_TCB (referred from rt_task.o). uv3Test.axf: Error: L6218E: Undefined symbol os_idle_demon (referred from rt_task.o). uv3Test.axf: Error: L6218E: Undefined symbol os_init_context (referred from rt_task.o). uv3Test.axf: Error: L6218E: Undefined symbol os_init_mem (referred from rt_task.o). uv3Test.axf: Error: L6218E: Undefined symbol os_maxtaskrun (referred from rt_task.o). uv3Test.axf: Error: L6218E: Undefined symbol os_tmr_init (referred from rt_task.o). uv3Test.axf: Error: L6218E: Undefined symbol tsk_lock (referred from rt_task.o). uv3Test.axf: Error: L6218E: Undefined symbol tsk_unlock (referred from rt_task.o). uv3Test.axf: Error: L6218E: Undefined symbol os_chk_robin (referred from rt_clock.o). uv3Test.axf: Error: L6218E: Undefined symbol os_tmr_force_irq (referred from rt_clock.o). uv3Test.axf: Error: L6218E: Undefined symbol os_tmr_inspect_cnt (referred from rt_clock.o). uv3Test.axf: Error: L6218E: Undefined symbol os_tmr_inspect_ovf (referred from rt_clock.o). uv3Test.axf: Error: L6218E: Undefined symbol os_tmr_reload (referred from rt_clock.o). uv3Test.axf: Error: L6218E: Undefined symbol os_clock_interrupt0 (referred from IRQ_RTX.o). uv3Test.axf: Error: L6218E: Undefined symbol os_alloc_TMR (referred from rt_timer.o). uv3Test.axf: Error: L6218E: Undefined symbol os_free_TMR (referred from rt_timer.o). uv3Test.axf: Error: L6218E: Undefined symbol os_tmr_call (referred from rt_timer.o).
My main.c is as followed:
#include <RTL.h> OS_TID id1, id2; void task1(void) __task; void task2(void) __task; void task1(void) __task { } void task2(void) __task { } int main(void) { os_sys_init(task1); return 0; }
My retarget.c is as followed:
#include <rt_misc.h> #pragma import(__use_no_semihosting_swi) void _sys_exit(int return_code) { label: goto label; /* endless loop */ }
I have set my ARM Development Tools to use RealView compiler and pointed to D:\Keil uv3\ARM\BIN30\
The RTL verison that I am usign is "RTL-ARM Version 3.02b Release"
My linker control string is as followed:
*.o "D:\Keil uv3\ARM\RV30\LIB\RTLRTX.LIB" --strict --map --xref --callgraph --symbols --info sizes --info totals --info unused --info veneers --list ".\uv3Test.map" -o "uv3Test.axf"
My hardware platform is Atmel SAM7S256
Thanks in advanced for anybody who provides comments. :-)