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.
when i compile a programe in V6.12,the compiler gives L10 Warning:CANNOT DETERMINE ROOT SEGMENT,how to solve this problem?
Is your main C function written in assembly or was it compiled with the SRC directive? Jon
Thanks.My main C function is written in C and it was not compiled with the SRC directive.
Do you have a modified STARTUP.A51 file? Can you re-crate the problem also with example programs?
The compiler always gives the warning whether i have a modified STARTUP.A51 file or not.It gives no warning when compiling example programs.
So this brings it to the point: what is the difference between your application and the example programs (or other user applications).
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 ;-)