Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct
QtCreator reruns qmake every time I 'run' or 'build'
QtCreator reruns qmake and then make everytime I hit "Run" or "Build", even if nothing has changed. For the large project I'm working on, that takes significant time. I recently upgraded to 4.0.2, but I just checked, and it also happens on 3.6.
I'm pretty sure this wasn't always the case. I already tried wiping the build directory. Any ideas on how I could debug why qmake thinks it needs to rerun qmake / make even if nothing at all has changed?
There was an old bug related to that but it has been fixed since a long time.
What OS are you on ? What target do you have ?
NikolausDemmel last edited by NikolausDemmel
@SGaist I'm running on Ubuntu 14.04 64bit. qmake version is 3.0 from a Qt 5.4.2 installation, make is GNU Make 3.81.
I just checked with my collegues machines, there it seems to be like it used to be on my machine, which is that when nothing has changed and the project is fully built, only make runs to check that it does not need to update anything. This is fine (takes maybe around 1-2 seconds).
For me, the issue is that before make also qmake is rerun every time, which takes maybe 10-15 seconds, which is too long for every debugger invocation etc.
Edit: I'm building for "Desktop" device type.
One more update: For some other project with the same QtCreator version and Kit, I do not observe this issue. I.e. I see the line
19:03:13: Configuration unchanged, skipping qmake step.
in the build output window. Can I get QtCreator / qmake to tell me why they did not skip qmake for the other project?
3.0 is a bit outdated. You really should consider updating. 4.0.2 just got released.
@SGaist outdated? 3.0 is the qmake version (from Qt 5.4.2). I don't think I can upgrade the qmake version for any specific Qt version, can I?
As for qtcreator, I have this on both 3.6 and 4.0.2.
Sorry, my bad, I misread your post about the version. By the way are you locked to 5.4.2 ? The current version being 5.7.0 or the LTS 5.6.1.
Silly idea, did you check the file properties of your "buggy" project ? Are the dates current ?
Thanks for the comments. I found the issue. It was to do with the way I specified additional qmake parameters for this particular project, see https://bugreports.qt.io/browse/QTCREATORBUG-16492
@SGaist : sorry for the slow update, I figured out the issue yesterday already, but somehow wasn't able to post to the forum. And just now I got hit by the posting rate limit for not having any reputation.
I was indeed already checking the dates, but it turned out to be the project specific configuration ;-).
We are "locked" to 5.4.2 for this particular project because at some point we agreed to stick with this for production and every update brings its risk of regressions. At the time there were some issues with 5.5. (don't know which though) which made us stick to 5.4. We will probably upgrade at some point when the need arises.