Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct
[SOLVED] Qt 4.8.3 qmake produces faulty makefiles
I am currently trying to get Qt 4.8.3 and TDM-GCC running. Unfortunately not even a simple application is buildable because qmake produces defective Makefiles in my case.
When i run mingw32-make in my shadow build tree, i get the following error
@mingw32-make -f Makefile.Release
mingw32-make: Entering directory
C:/Temp/test01-build-Desktop-Release' mingw32-make: *** No rule to make target../test01/...', needed by
ui_mainwindow.h'. Stop. mingw32-make: Leaving directoryC:/Temp/test01-build-Desktop-Release'
mingw32-make: *** [release] Error 2@
The offending part of the Makefile.Release file is:
c:/Qt/4.8.3/bin/uic.exe ../test01/mainwindow.ui -o ui_mainwindow.h@
Can anyone tell me what i'm doing wrong? The project i've used for this purpose is a Qt Creator 2.6 generated application (default "Qt GUI Application")
What i've tried so far:
Using another Compiler (Stock MinGW) => No success
Manually running "qmake -makefile -spec win32-g++" in the shadow build directory => No success
Manually running "qmake -makefile -speci win32-g++" in the source directory => No success
Adding C:\Qt\4.8.3\bin and C:\MingW32\bin to the PATH variable => No success
Tried Qt 4.8.1 instead => No success, same problem
I am running out of ideas...
After doing a little more investigation it seems that the issue must be related to the local system (Windows 8 RTM):
Copying Qt 4.8.3 and the MinGW compiler to another host (Windows 7 based) and running qmake/mingw32-make there works.
Running qmake on another host (Windows 7) and compiling the project on the Windows 8 box works too.
Interesting. Consider trying out "Qt 4.8.4 RC3":http://releases.qt-project.org/digia/4.8.4_RC3/ and if the problem persists, would be nice to report this as a bug on "jira":https://qt-project.org/wiki/ReportingBugsInQt.
So, after digging and playing around a little more i've found out whats going on - and it seems to be a bug in Qmake.
I've set up my system to execute a batch script automatically every time i run "cmd.exe" via the Registry Key "HKCU\Software\Microsoft\Command Processor" REG_SZ AutoRun. If this batch script outputs something like
Setting up environment ....
in my case, the newlines and '...' end up in the Makefile. Automagically the alphanumeric characters are filtered out. As soon as i disable the output of the batch script, everything works as expected. Should i post a Bug report to JIRA or is this just a behavior too specific in my environment?
This is indeed quite specific, but I think it's worth reporting. There are some generally available programs that hook up to cmd.exe, too, so a fix might have some broader use.