Windows CI Qt 5.15.2
Closed, ResolvedPublic

Description

Hello, as I started to bump the minimum required Qt version in KF, I realised that the window CI still has a version older than 5.15.2.

Should I revert the commits until the version on the CI is updated?

Restricted Application added a subscriber: sysadmin. · View Herald TranscriptAug 14 2021, 7:02 PM
bcooksley added subscribers: vonreth, kossebau, bcooksley.

I'm afraid for us to be able to do this we will first need the cache build to succeed for debug binaries on Windows.
https://binary-factory.kde.org/job/Craft_Build_Master_Cache_windows-msvc2019_64-cl-debug/85/console

I gave it a little nudge along with Perl's xml-reader module not being able to find Expat, however it has now fallen over on libgit2 not finding PCRE.
This is likely due to poor quality CMake code in libgit2 which isn't handling the debug postfixing that CMake does to libraries on Windows (it is there, as proven by editorconfig a little earlier in that log, which finds it successfully).

You'll need to patch libgit2 to fix that issue unfortunately.

bcooksley changed the visibility from "Custom Policy" to "Public (No Login Required)".Aug 15 2021, 9:37 AM
bcooksley changed the edit policy from "Custom Policy" to "All Users".

Thanks for the fix on that David.

We're quite a bit further along now, alas ran into the following with lensfun. I'm not sure why it is part of our Windows deployment (Digikam I suspect):

*** Action: compile for libs/lensfun ***
executing command: "C:\Craft\CI-Qt515\windows-msvc2019_64-cl-debug\dev-utils\bin\cmake.exe" -G Ninja  -DBUILD_TESTING=ON -DBUILD_SHARED_LIBS=ON  -DBUILD_STATIC=OFF -DBUILD_TESTS=OFF -DBUILD_AUXFUN=OFF -DBUILD_FOR_SSE=ON -DBUILD_FOR_SSE2=ON -DBUILD_DOC=OFF -DCMAKE_INSTALL_PREFIX=C:/Craft/CI-Qt515/windows-msvc2019_64-cl-debug -DCMAKE_PREFIX_PATH=C:/Craft/CI-Qt515/windows-msvc2019_64-cl-debug -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP=ON -DKDE_INSTALL_USE_QT_SYS_PATHS=ON -S C:\_\67ab09bf\lensfun-0.3.2
CMake Deprecation Warning at CMakeLists.txt:2 (CMAKE_MINIMUM_REQUIRED):
  Compatibility with CMake < 2.8.12 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.


-- The C compiler identification is MSVC 19.29.30038.1
-- The CXX compiler identification is MSVC 19.29.30038.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Professional/VC/Tools/MSVC/14.29.30037/bin/Hostx64/x64/cl.exe - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: C:/Program Files (x86)/Microsoft Visual Studio/2019/Professional/VC/Tools/MSVC/14.29.30037/bin/Hostx64/x64/cl.exe - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Looking for include file regex.h
-- Looking for include file regex.h - not found
-- Looking for include file endian.h
-- Looking for include file endian.h - not found
CMake Error at cmake/modules/FindGLIB2.cmake:72 (MESSAGE):
  Could not find glib2
Call Stack (most recent call first):
  CMakeLists.txt:91 (FIND_PACKAGE)


-- Configuring incomplete, errors occurred!
See also "C:/_/67ab09bf/build/CMakeFiles/CMakeOutput.log".
See also "C:/_/67ab09bf/build/CMakeFiles/CMakeError.log".
Command "C:\Craft\CI-Qt515\windows-msvc2019_64-cl-debug\dev-utils\bin\cmake.exe" -G Ninja  -DBUILD_TESTING=ON -DBUILD_SHARED_LIBS=ON  -DBUILD_STATIC=OFF -DBUILD_TESTS=OFF -DBUILD_AUXFUN=OFF -DBUILD_FOR_SSE=ON -DBUILD_FOR_SSE2=ON -DBUILD_DOC=OFF -DCMAKE_INSTALL_PREFIX=C:/Craft/CI-Qt515/windows-msvc2019_64-cl-debug -DCMAKE_PREFIX_PATH=C:/Craft/CI-Qt515/windows-msvc2019_64-cl-debug -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_SYSTEM_RUNTIME_LIBS_SKIP=ON -DKDE_INSTALL_USE_QT_SYS_PATHS=ON -S C:\_\67ab09bf\lensfun-0.3.2 failed with exit code 1
Action: compile for libs/lensfun:0.3.2 FAILED
*** Craft all failed: libs/lensfun after 2 seconds ***
fatal error: package libs/lensfun all failed
Craft stopped with out completing ['libs/lensfun', 'libs/openal-soft', 'libs/pthreads']

If I had to guess, I would say it is having the same issue with library post-fixing that libgit2 has.

Excellent, thanks. (I had no idea how to fix it :D).

bcooksley closed this task as Resolved.Aug 17 2021, 10:05 AM
bcooksley claimed this task.

Following the latest fixes from Hannah, and a brief argument with CMake (which changed how they searched for compilers and broke things... *sigh*) the system is now functioning again.
Unfortunately we can't restore full normal coverage due to a compilation failure in KIO (see https://build.kde.org/view/Failing/job/Administration/job/Dependency%20Build%20Frameworks%20kf5-qt5%20WindowsMSVCQt5.15/70/console)

From a Sysadmin side the system has been restored to normal operation though, although we've definitely some work needed on making the system setups more reproducible.

Should be fixed by https://invent.kde.org/frameworks/kio/-/commit/707b3eadf661e9f1066748cda8f1349bca95137b

FWIW, kio_windows_lstat() looks useful, and should be pushed to the upstream qplatformdefs*.h, by someone who knows the windows API, so that QT_LSTAT works on windows too OOTB.