Details
-
Bug
-
Resolution: Done
-
P2: Important
-
6.2
-
Ubuntu 20.04 LTS
clang 10.0.0 from Ubuntu's repositories
cmake 3.19.2 from Qt Online Installer
-
743bb66744 (qt/qtbase/dev) 743bb66744 (qt/tqtc-qtbase/dev) fbdd076ae9 (qt/qtbase/dev) fbdd076ae9 (qt/tqtc-qtbase/dev)
Description
- Clone qtbase, configure and build it:
git clone --depth 1 git://code.qt.io/qt/qtbase.git
cd qtbase
./configure -platform linux-clang -opensource -confirm-license -nomake examples -nomake tests -prefix $PWD
cmake --build . --parallel && echo success
This will finish and write:
success
- Be paranoid. Make sure the build really finished:
cmake --build . --parallel && echo success
You will see:
ninja: no work to do. success
Nice.
- Update the timestamp of a file:
touch src/corelib/io/qurl.h
- Rebuild:
cmake --build . --parallel && echo success
This will build most files again. Sooner or later it will finish and write:
success
- Be paranoid. Make sure the build really finished:
cmake --build . --parallel && echo success
It will start building files again. 53 steps for me.
Huh?
Either the build didn't finish properly in step 4 or it's doing pointless rebuilds in step 5. Either step 4 should report a build failure or step 5 shouldn't trigger any rebuilds.
Attachments
Issue Links
- is duplicated by
-
QTBUG-102162 Unnecessary rebuilding of targets when moc executable changes - on _next_ rebuild
- Reported
- relates to
-
QTBUG-99683 Make it possible to build the tools in a non-cross-compilation build when QT_FORCE_FIND_TOOLS is also set
- Closed