I get the following error when I do build in microvision. The project uses a CortexM1 processor on Altera Cycloneiii FPGA.
The Error: .\obj\ITCM.axf: Error: L6200E: Symbol ferror multiply defined (by iostubs.o and retarget.o).
The code causing the error: /* fopen test prg*/
void tst_fopen (void) { FILE *fin; fin = fopen ("Test.txt","r"); if (fin == NULL) { printf ("File not found!\n"); } else { fclose (fin); } }
Iam a Hardware Enginner, not much in the C programming., I was wondering if any one could help me on this issue.
Thanks, Veeraraghavan.R
Unfortunately Keil/ARM's use of "multiply" like that is very clumsy - to be polite!
What the message is telling you is that the symbol "ferror" has multiple definitions within your program; In fact, the Linker had found two files that define it, and it has helpfully listed them for you - they are iostubs.o and retarget.o
So, you need to remove the definition of "ferror" from one of those two files.
"I am a Hardware Enginner, not much in the C programming"
I trust you will be hiring a Software Engineer for the bulk of the software development...?
Thanks Andy , it worked., and as you said we do have a SW Engineer for software development!!! :)