Engine Rebuild Everytime

Hi, I got the engine working quite well on my linux (fedora 26 kernel 4.13.15-200). But rebuild my C++ project or a
recently added the C++ class, the engine tries to rebuild it self.

After what seams like an eternity trying to debug this problem, because every attempt triggers the entire engine compilation (strange enough first compilation took 1h now takes 2h), I’m pretty sure that if I do not run the editor or the UBT from the same folder the compilation starts to kick in.

Well trying to make sure every thing runs from the same folder is a nightmare, and can’t be right. This is a huge pitfall for newcomers, and makes the engine impossible to use.

Any ideas? thoughts?

You probably have a file with the timestamp in future. Try passing -verbose to UBT (e.g. when doing make MyProjectEditor do make MyProjectEditor ARGS=-verbose instead) and look for explanation for Outdated actions.

I re-downloaded the engine from git and rebuild all, change a couple of paths and added “-verbose” tag to my builds cmd when/if this happens again I will post the logs here. But for now everything is fine. Right now I’m not very anxious to try replicate this error.

“You probably have a file with the timestamp in future” any ideas how did this happen?

The outdated actions changed the clang path from “/usr/lib64/ccache/clang++” when I compiled from the terminal to “/usr/bin/clang++” in qtcreator, thus triggering the compilation I guess.

Both programs are the same clang 4.0.1, they are actually symbolic links.

Granted my PATH in qtcreator and system are different, “/usr/lib64/ccache/” comes first in my system path. But they still the same clang version.

For the record:

  1. The running commands from different folders does not causes the engine to be rebuild;
  2. Qtcreator wasn’t using the right environment PATH thus changing the clang path this causes the engine to be rebuild (even if you run the engine from the terminal for instance, and not from the Qtcreator) so watch-out for that;
  3. ccache was the thing slowing down the compile time, go figure; (I will keep testing to see if any thing changes)