We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
Hello everyone,
I have been searching the forums trying to find a solution to this but I have come up empty. There are plenty of posts regarding this error, but none (that I can find) in reference to switching to C++.
I have created a (rather large) code base that I have successfully implemented in C. It compiles and runs just fine. However, I would like to simplify some of the coding by making use of some of C++'s awesome features.
When I try to convert to C++, it no longer compiles and I get a lot of linker errors. I have set the compiler directive to --cpp and have renamed all of the files to .cpp (instead of .c).
I am using the TCP, and RTX libraries (if you cant tell from the errors).
The following is the output of the linker:
linking... .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol http_EnAuth (referred from http_cgi.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol tcp_NumSocks (referred from http_cgi.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol __debug__ (referred from at_tcp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol __error__ (referred from at_tcp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol tcp_2MSSTout (referred from at_tcp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol tcp_ConRetry (referred from at_tcp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol tcp_InitRetryTout (referred from at_tcp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol tcp_MaxRetry (referred from at_tcp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol tcp_RetryTout (referred from at_tcp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol tcp_SynRetryTout (referred from at_tcp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol udp_NumSocks (referred from at_udp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol MPool_Size (referred from at_http.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol http_NumSess (referred from at_http.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol http_PortNum (referred from at_http.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol http_auth_dev (referred from at_http.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol http_auth_user (referred from at_http.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol tcp_DefTout (referred from at_http.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol dns_TabSize (referred from at_dns.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol netif_cfg (referred from at_dns.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol tick_rate (referred from at_dns.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol init_debug (referred from at_system.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol nlocalm (referred from at_system.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol mp_stk_size (referred from rt_task.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol mp_tcb_size (referred from rt_task.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol mp_tmr_size (referred from rt_task.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol os_error (referred from rt_task.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol os_fifo_size (referred from rt_task.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol os_idle_demon (referred from rt_task.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol os_maxtaskrun (referred from rt_task.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol os_stackinfo (referred from rt_task.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol os_trv (referred from rt_task.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol os_flags (referred from hal_cm3.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol arp_MaxRetry (referred from at_arp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol arp_Resend (referred from at_arp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol arp_TabSize (referred from at_arp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol arp_TimeOut (referred from at_arp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol os_rrobin (referred from rt_robin.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol igmp_T200ms (referred from at_igmp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol igmp_TabSize (referred from at_igmp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol igmp_table (referred from at_igmp.o). .\Obj\SPARQ.axf: Error: L6218E: Undefined symbol os_tmr_call (referred from rt_timer.o). .\Obj\SPARQ.axf: Not enough information to list image symbols. .\Obj\SPARQ.axf: Not enough information to list the image map. .\Obj\SPARQ.axf: Finished: 2 information, 0 warning and 41 error messages.
I know it is just something really stupid but I just cant figure it out. I would greatly appreciate any help/advice that you can give.
Oh, in case it matters, I am using the MCB1700 demo board with the LPC1768 chip.
Thanks in advance,
Jon