Details
-
Bug
-
Resolution: Incomplete
-
P3: Somewhat important
-
None
-
5.11
-
None
-
* Windows 10 x64, FCU, latest Update
* VS 2017 15.5.5, 15.6 Preview 4
* Windows 10 SDK 16299, C++ only, no UWP
* ICU 60.2 from SVN
* OpenSSL 1.1.0 from Git
* Qt Git: Dev and 5.11, latest Submodule Merges
* Jom 1.1.2
* Clang 5.0.1 x64, prebuilt
* Clang 7.0.0 x64, latest SVN trunk, built against VS 2017 15.5.5
* AMD Phenom II x4 965 BE, 3.4 GHz, no HT, 4 real Cores
* 16 GB physical RAM, 10-12 GB RAM constantly free during compilation
* 1 TB HDD, 108 GB free
* 800 MB Pagefile, fixed Size* Windows 10 x64, FCU, latest Update * VS 2017 15.5.5, 15.6 Preview 4 * Windows 10 SDK 16299, C++ only, no UWP * ICU 60.2 from SVN * OpenSSL 1.1.0 from Git * Qt Git: Dev and 5.11, latest Submodule Merges * Jom 1.1.2 * Clang 5.0.1 x64, prebuilt * Clang 7.0.0 x64, latest SVN trunk, built against VS 2017 15.5.5 * AMD Phenom II x4 965 BE, 3.4 GHz, no HT, 4 real Cores * 16 GB physical RAM, 10-12 GB RAM constantly free during compilation * 1 TB HDD, 108 GB free * 800 MB Pagefile, fixed Size
Description
Building the QDoc Module alone with
jom /nologo /j4 docs
after compiling the other Modules, takes longer than all other Qt Modules together (excluding QtWebEngine of course).
Build times with full utilization of all 4 Cores are:
- VS 2013, 2015, 2017 without Clang, Qt 5.2 Alpha - 5.10: 8 - 12 Minutes! depending on overall CPU utilization
- VS 2017 15.5.5 with Clang 5.0.1 for QDoc, prebuilt Binaries: 02 hours 33 Minutes
- VS 2017 15.5.5 with Clang 7.0.0 for QDoc, latest SVN trunk: 01 hour 02 Minutes
Also with Clang 5.0.1, there is the following Error Message for every Module:
"libclang: crash detected during AST saving: { 'filename' : 'C:/temp/qdoc_pch.wtazNK/QtCore.pch' 'options' : 0, }"
and
(qdoc) Could not save PCH file for "QtCore" 1 QTemporaryDir: Unable to remove "C:\\temp\\qdoc_pch.wtazNK" most likely due to the presence of read-only files.
Those Errors are not occuring with Clang 7.0.0 so they are fixed in the Compiler it seems.
Qt Configure Parameters are:
%SystemDrive%\qt5srcgit\qt5\configure -verbose -make-tool jom -opensource -confirm-license -prefix %SystemDrive%\qtx64\ -opengl dynamic -debug-and-release -optimize-size -openssl-linked -I%SystemDrive%\OpenSSLx64\include -L%SystemDrive%\OpenSSLx64\lib OPENSSL_LIBS="-llibssl -llibcrypto" -icu -I%SystemDrive%\ICUx64\include -L%SystemDrive%\ICUx64\lib -mp -nomake tests -nomake examples -no-warnings-are-errors -skip qt3d -skip qtactiveqt -skip qtandroidextras -skip qtcanvas3d -skip qtcharts -skip qtconnectivity -skip qtdatavis3d -skip qtgamepad -skip qtlocation -skip qtmacextras -skip qtnetworkauth -skip qtpurchasing -skip qtqa -skip qtremoteobjects -skip qtrepotools -skip qtscript -skip qtscxml -skip qtsensors -skip qtserialbus -skip qtserialport -skip qtspeech -skip qtsvg -skip qtvirtualkeyboard -skip qtwayland -skip qtwebglplugin -skip qtx11extras -skip qtwebengine
After that the Command Script calls
jom /nologo /j4 && ^ [... xcopy commands to copy all the Clang, OpenSSL and ICU Libs to the Install Target Directory] jom /nologo /j1 install && ^ jom /nologo /j4 docs && ^ jom /nologo /j1 install_docs && ^
Another Bug:
Clang ignores the Configure Parameter '-no-pch' when set and uses PCH Files no matter what.
If you need some Log Files, please let me know: Another test can be started easily
Big Disclaimer: Total Clang Noob here. If I missed something obvious than Sorry but Clang Infos for Qt are close to non-existent at this point.
Thanks!