when i compile a programe in V6.12,the compiler gives L10 Warning:CANNOT DETERMINE ROOT SEGMENT,how to solve this problem?
Hi Jerry, I just faced the same problem. Maybe the reason I found is applicable for you, too. When passing parameters to main() the segment name changes from ?PR?MAIN?SRC_MODULE to ?PR?_MAIN?SRC_MODULE. The problem is that the linker does not parse for this segment name -> CANNOT DETERMINE ROOT SEGMENT. One could state that it does not make sense to pass paramters to main() in a uController application but we efford to change the linker to parse for both segment names should be acceptable. (The same amount of time to guess that the cause of this problem is ;-)
So this brings it to the point: what is the difference between your application and the example programs (or other user applications).
The compiler always gives the warning whether i have a modified STARTUP.A51 file or not.It gives no warning when compiling example programs.
Do you have a modified STARTUP.A51 file? Can you re-crate the problem also with example programs?
Thanks.My main C function is written in C and it was not compiled with the SRC directive.
Is your main C function written in assembly or was it compiled with the SRC directive? Jon
Thanks for your reply.Yes,my program has main() function.How to resolve this problem?
does you 'C' have a main() function?
View all questions in Keil forum