I am getting error below while compiling http_demo example for mcbstr9. Tried defining these three variables again in Net_config.h as
extern const U8 IP_Broadcast[IP_ADRLEN]; extern const U8 MAC_Broadcast[ETH_ADRLEN]; But getting same error again. Kindly help.
.\Obj\Http_demo.axf: Error: L6200E: Symbol IP_Broadcast multiply defined (by at_ip.o and net_config.o). .\Obj\Http_demo.axf: Error: L6200E: Symbol MAC_Broadcast multiply defined (by at_ethernet.o and net_config.o). .\Obj\Http_demo.axf: Error: L6200E: Symbol igmp_is_member multiply defined (by at_igmp.o and net_config.o).
I am not able to find location of other three files. Where are they stored. Following is the link for mcbstr9http_demo. I downloaded that and when recompiling after some necessary configuration changes, getting errors. http://www.keil.com/download/docs/318.asp
One of these three is define as follows in Net_config.c U8 const IP_Broadcast[IP_ADRLEN] = { 255, 255, 255, 255 };
Kindly help.
The organisation of TCPnet could be described as unorthodox.
You shouldn't be making changes to Net_Config.h
You would be expected to have a copy of Net_Config.c in with your project files, but even changes to that should be minimal.
If you want to access information contained in the TCPnet libraries, include external declarations in your files.
I have downloaded given example from Keil Website and recompiling it in uvision4. I am getting error as below. .\Obj\Http_demo.axf: Error: L6200E: Symbol IP_Broadcast multiply defined (by at_ip.o and net_config.o). .\Obj\Http_demo.axf: Error: L6200E: Symbol MAC_Broadcast multiply defined (by at_ethernet.o and net_config.o). .\Obj\Http_demo.axf: Error: L6200E: Symbol igmp_is_member multiply defined (by at_igmp.o and net_config.o).
How can I remove of those errors?
Kindly Help.
You don't have grep, a file manager or can't use find-in-files? Finding the files pulled into a project seems like rather a basic task, do you have anyone around you with more experience who can guide you? A colleague or teacher?
What version of uVision are you using? The date of the download suggests it would need uv4
Dear Sir,
Thank you for the suggestion. But I have used everything before posting the error. There is no file like that. Kindly give some more solution to the problem. I am using Keil uVision4 as well as 5th version.
Well, clearly, the Linker is telling you that there is!
Almost invariably, an object file named <something>.o comes from a source file named <something>.c (or <something>.s or <something>.asm, etc)
Have you searched your entire hard drive for, say, at_ip.* and net_config.*
"Have you searched your entire hard drive for, say, at_ip.* and net_config.*"
Just remember that there may also be a "random-name".lib that happens to contain an "at_ip.o" so the linker can find files that aren't directly represented in the file system or where the base name isn't represented in the file system.
But there are always developer tools available to solve these kind of problems - since it was developer tools that created the files that the linker processes. And developers who created the linker.