Programming noob, looking at open source to see how real projects work. I just read that firefox takes ~20 minutes to compile.
Does that mean every time you make a change you have to wait 20 minutes to make sure your change doesn't fuck anything up?
How the hell does debugging work in large projects if you have to wait 20+ minutes every time you make a change?
>>58895713
No, they are multiple files I would guess and it only compiles the changes thanks to MAKE file.
>>58895742
Does compilation take up the most time of the build process? If you only change one file, does that mean the overall build time of the project would be much shorter?
Most software is split up into several separate modules that are built separately and just combined at the end. So yes if you only change one file, and assuming you compiled everything once before, the build time will be much shorter.
It depends on how the code is structured. Typically a large codebase is broken down in a modular fashion such that any given change only requires that a subset of code to be recompiled. Perhaps the first time you build the whole thing it takes 20 minutes, but your iteration cycle afterwards will be isolated to whatever module/piece you're working on.
Compiled languages all suffer from that... Firefox is mostly C, check CCache for avoiding to recompile the same code over and over again.