I have Declared all my declaration in one file called ADeclaration.h and included this file in all my module C files.
i.e.
i have
MAIN.c (MAIN) Port_IO.c (PORT_IO) STORAGE.c (STORAGE) TEMPERATURE.c (TEMPERATURE) CONVERT.c (CONVERT) UART.c (UART) RTC.c (RTC) I2C.c (I2C) ISR.c(ISR) FLASH.c (FLASH)
All the declaration of this files are in Adeclaration.h
now i am getting my project.M51 with Program Size: data=157.5 xdata=5988 code=11148 LINK/LOCATE RUN COMPLETE. 29 WARNING(S), 294 ERROR(S)
and the target is not created
most of the error are like
*** ERROR L104: MULTIPLE PUBLIC DEFINITIONS SYMBOL: LOCAL MODULE: STORAGE.obj
"i had been given the one file 2000 line code from my company"
Did it build cleanly (ie, no errors, no warnings) originally?
If not, that is clearly something that you need to fix before you do anything else!
"when i modularized the code it is compiling but showing error mostly ERROR L104 and ERROR L105"
So, how did you "modularise" it?
Clearly, whatever you did has introduced these errors - don't you think?!
I doubt I'd lose much money if I bet that the L104s are due to you making the classic mistake of having definitions in your header file(s)...
See: c-faq.com/.../decldef.html And: http://www.keil.com/support/man/docs/bl51/bl51_l104.htm
And the L105s are probably a direct result of the L104s: http://www.keil.com/support/man/docs/bl51/bl51_l105.htm