This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

All Code Rebuilt when using Command Line

Can anybody help me with this?

I am building from the command line using a batch file. Every time the batch file is run, all C files are rebuilt even if there were no changes. Building from the uVision2 IDE works as you would expect with incremental builds.

I have search this site and found two memos about this. One concerns the TZ setting in the Autoexec.bat - I don't have that. The other memo states a "A=0x0" in the Defines section can cause this as well. I removed all defines and still have the problem.

Any ideas?

Thanks
Barry

Parents
  • Thanks for the tip about sending the code snippets Andrew. Yes the problem does seem to be the ResComp's generation of the two .h files. Can you tell me how uVision determines if a file needs to be rebuilt? Do you know what two times are being compared and how I can view them? I assume one is the "modified" date of the source file but I can't find the other date stored in any file created by uVision or in the .obj file.

Reply
  • Thanks for the tip about sending the code snippets Andrew. Yes the problem does seem to be the ResComp's generation of the two .h files. Can you tell me how uVision determines if a file needs to be rebuilt? Do you know what two times are being compared and how I can view them? I assume one is the "modified" date of the source file but I can't find the other date stored in any file created by uVision or in the .obj file.

Children
  • When the C51 compiler "compiles" a C file, the path of the original C file is embedded in the .OBJ file that is generated. That way, UV2, can quickly determine if a file needs to be recomilped (by comparing the time stamp of the .OBJ file with that of the .C file).

    Additionally, the paths of all include files (and their include files) are embedded in the .OBJ file.

    When UV2 checks, if ANY of the original SOURCE files (the original .C file and any include files) are "newer" than the .OBJ file, the .C file is recompiled.

    This is totally automatic and may compile MORE than necessary (but certainly not less).

    Jon