Details
-
Bug
-
Resolution: Duplicate
-
P1: Critical
-
None
-
5.14.0
-
None
-
Windows 10, mingw 7.3 64 bits
Description
When generating the .pro qmake config from command line for automated sequence (Jenkins in my case), the resulting Makefile name is different and the build folder is different starting at 5.14.0 under Windows and mingw. Qt 5.9 (maybe even sooner, not tested) to 5.13.2 behave the same. Here is the difference:
Differences
qmake UnitTests.pro -spec win32-g++ "CONFIG+=debug" "CONFIG+=qml_debug"
5.13.2- generate: Makefile.debug
5.14.0+ generate: Makefile
mingw32-make -f Makefile.Debug
or for 5.14.0
mingw32-make -f Makefile
give the following command:
g++ -c -fno-keep-inline-dllexport -g -std=gnu++11 -Wall -W -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DMODULE_AMOTUS_CPP -DMODULE_AMOTUS_QT -DMODULE_AMOTUS_I18N -DMODULE_AMOTUS_QT_FILESYSTEM -DMODULE_AMOTUS_QT_COMMANDS -DMODULE_AMOTUS_QT_LOGGER -DMODULE_UNIT_TESTS_AMOTUS_QT -DQT_QML_DEBUG -DQT_QUICKCONTROLS2_LIB -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_TESTLIB_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_BLUETOOTH_LIB -DQT_XML_LIB -DQT_POSITIONING_LIB -DQT_CORE_LIB -DQT_TESTCASE_BUILDDIR="\"C:/Jenkins/workspace/Amotus/Qt UnitTests/Amotus_Qt_UnitTests\"" -I. -I..\QtUnitTestsReposToTest\Amotus_C\Include -I..\QtUnitTestsReposToTest\Amotus_C\UnitTests -I..\QtUnitTestsReposToTest\Amotus_CPP -I..\QtUnitTestsReposToTest\Amotus_CPP\UnitTests -I..\QtUnitTestsReposToTest\Amotus_Qt -I..\QtUnitTestsReposToTest\Amotus_Qt\FileSystem -I..\QtUnitTestsReposToTest\Amotus_Qt\Commands -I..\QtUnitTestsReposToTest\Amotus_Qt\Logger -I..\QtUnitTestsReposToTest\Amotus_Qt\UnitTests -IC:\Qt\5.13.2\mingw73_64\include -IC:\Qt\5.13.2\mingw73_64\include\QtQuickControls2 -IC:\Qt\5.13.2\mingw73_64\include\QtQuick -IC:\Qt\5.13.2\mingw73_64\include\QtGui -IC:\Qt\5.13.2\mingw73_64\include\QtANGLE -IC:\Qt\5.13.2\mingw73_64\include\QtTest -IC:\Qt\5.13.2\mingw73_64\include\QtQml -IC:\Qt\5.13.2\mingw73_64\include\QtNetwork -IC:\Qt\5.13.2\mingw73_64\include\QtBluetooth -IC:\Qt\5.13.2\mingw73_64\include\QtXml -IC:\Qt\5.13.2\mingw73_64\include\QtPositioning -IC:\Qt\5.13.2\mingw73_64\include\QtCore -Idebug -I/include -IC:\Qt\5.13.2\mingw73_64\mkspecs\win32-g++ -o debug\main.o main.cpp
or for 5.14.0
g++ -c -fno-keep-inline-dllexport -g -std=gnu++11 -Wall -Wextra -Wextra -fexceptions -mthreads -DUNICODE -D_UNICODE -DWIN32 -DMINGW_HAS_SECURE_API=1 -DMODULE_AMOTUS_CPP -DMODULE_AMOTUS_QT -DMODULE_AMOTUS_I18N -DMODULE_AMOTUS_QT_FILESYSTEM -DMODULE_AMOTUS_QT_COMMANDS -DMODULE_AMOTUS_QT_LOGGER -DMODULE_UNIT_TESTS_AMOTUS_QT -DQT_QML_DEBUG -DQT_QUICKCONTROLS2_LIB -DQT_QUICK_LIB -DQT_GUI_LIB -DQT_TESTLIB_LIB -DQT_QMLMODELS_LIB -DQT_QML_LIB -DQT_NETWORK_LIB -DQT_BLUETOOTH_LIB -DQT_XML_LIB -DQT_POSITIONING_LIB -DQT_CORE_LIB -DQT_TESTCASE_BUILDDIR="\"C:/Jenkins/workspace/Amotus/Qt UnitTests/Amotus_Qt_UnitTests\"" -I. -I..\QtUnitTestsReposToTest\Amotus_C\Include -I..\QtUnitTestsReposToTest\Amotus_C\UnitTests -I..\QtUnitTestsReposToTest\Amotus_CPP -I..\QtUnitTestsReposToTest\Amotus_CPP\UnitTests -I..\QtUnitTestsReposToTest\Amotus_Qt -I..\QtUnitTestsReposToTest\Amotus_Qt\FileSystem -I..\QtUnitTestsReposToTest\Amotus_Qt\Commands -I..\QtUnitTestsReposToTest\Amotus_Qt\Logger -I..\QtUnitTestsReposToTest\Amotus_Qt\UnitTests -IC:\Qt\5.14.0\mingw73_64\include -IC:\Qt\5.14.0\mingw73_64\include\QtQuickControls2 -IC:\Qt\5.14.0\mingw73_64\include\QtQuick -IC:\Qt\5.14.0\mingw73_64\include\QtGui -IC:\Qt\5.14.0\mingw73_64\include\QtANGLE -IC:\Qt\5.14.0\mingw73_64\include\QtTest -IC:\Qt\5.14.0\mingw73_64\include\QtQmlModels -IC:\Qt\5.14.0\mingw73_64\include\QtQml -IC:\Qt\5.14.0\mingw73_64\include\QtNetwork -IC:\Qt\5.14.0\mingw73_64\include\QtBluetooth -IC:\Qt\5.14.0\mingw73_64\include\QtXml -IC:\Qt\5.14.0\mingw73_64\include\QtPositioning -IC:\Qt\5.14.0\mingw73_64\include\QtCore -I. -I/include -IC:\Qt\5.14.0\mingw73_64\mkspecs\win32-g++ -o main.o main.cpp
I have attach a visual diff, double -Wextra, the second replace the -W, seem ok, added QtQmlModels, the incldue path now is . vs debug and the output is main.o instead of debug\main.o
Now all the build object are into the project folder and the output doesn't match previous behavior. There is probably an argument to specify this to qmake I hope that will give me back the same beahvior as before.
I also attached the generated makefiles.
Attachments
Issue Links
- duplicates
-
QTBUG-80792 MinGW: Regressions in 5.14.0
- Closed