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

Minimal Build

Every time when I rebuild my project the *.c files, for which the options 'generate assembler SRC file' and 'assemble SRC file' are chosen, are rebuilt even if they had not been modified.
It is so annoying ! Does anybody know a way to avoid this ?

Parents
  • Yes, I raised this point a while ago for C51.

    uVision is described as an "Integrated Development Environment (IDE)." When it starts, the "Splash" screen has the slogan, "Total Integation"
    However, for reasons like this little "feature," I prefer to call it a "Not-Entirely-Integrated Develeopment Environment (NEIDE)" ;-)

    I think the problem is basically that Keil started with a set of command-line tools (C51.exe, A51.exe, BL51.exe, etc) and have bolted uVision on top;
    If you were not using the "IDE" (sic), you would use something like make instead, and it would be easy to control the re-generation of the .obj via .src from 'C' source.
    But because Keil just added uVision as an "extra", and needed to keep the command-line tools the same (for existing users), they're stuck with an "IDE" which doesn't have access to the dependency information which is essential for it to perform the "Integration" function of automating the build!

    Some 'C' compilers have an option to generate a dependency listing for use when creating makefiles; perhaps Keil could add such an option, which could then enable uVision to do a proper job on the 'make' process (after all, a similar sort of thing happens with the Global Register Optimisation).
    This would also help those users who want to create makefiles for use with the command-line tools.

Reply
  • Yes, I raised this point a while ago for C51.

    uVision is described as an "Integrated Development Environment (IDE)." When it starts, the "Splash" screen has the slogan, "Total Integation"
    However, for reasons like this little "feature," I prefer to call it a "Not-Entirely-Integrated Develeopment Environment (NEIDE)" ;-)

    I think the problem is basically that Keil started with a set of command-line tools (C51.exe, A51.exe, BL51.exe, etc) and have bolted uVision on top;
    If you were not using the "IDE" (sic), you would use something like make instead, and it would be easy to control the re-generation of the .obj via .src from 'C' source.
    But because Keil just added uVision as an "extra", and needed to keep the command-line tools the same (for existing users), they're stuck with an "IDE" which doesn't have access to the dependency information which is essential for it to perform the "Integration" function of automating the build!

    Some 'C' compilers have an option to generate a dependency listing for use when creating makefiles; perhaps Keil could add such an option, which could then enable uVision to do a proper job on the 'make' process (after all, a similar sort of thing happens with the Global Register Optimisation).
    This would also help those users who want to create makefiles for use with the command-line tools.

Children
No data