I want to build the KDE program LabPlot on Windows. Therefore I use the latest craft, CMake 3.9.5, Python 3.6.3, Qt 5.9.2 and ECM 5.39.0 But whenever I run CMake, I get this error: CMake Warning at C:/CraftRoot/share/ECM/find-modules/FindKF5.cmake:74 (find_package): Could not find a configuration file for package "KF5Archive" that is compatible with requested version "5.16.0". The following configuration files were considered but not accepted: C:/CraftRoot/lib/cmake/KF5Archive/KF5ArchiveConfig.cmake, version: 5.39.0 (64bit) Call Stack (most recent call first): CMakeLists.txt:21 (find_package) Could NOT find KF5Archive , checked the following files: C:/CraftRoot/lib/cmake/KF5Archive/KF5ArchiveConfig.cmake (version 5.39.0 (64bit)) I asked thre developer of LabPlot and they hae also no explanation than there is a bug in ECM. Therefore I report this here. To me it seems as if the "(64bit)" in the package name causes the bug but I am not sure.
It only complains about karchive ? Did you try rebuilding this module ?
rebuilding karchive doesn't help It does not only complain with karchive but with all other KF5 packages used by labplot: KF5Archive, KF5Completion, KF5Config ... I thought it might be a problem with Qt and therefore tried to use the prebuilt librarion directly from the Qt installer. In my craftsettings.ini and have now this: [QtSDK] ## For advanced users only ## Whether to use prebuild Qt binaries. Enabled = True ## The path to the Qt sdk. Path = C:\Qt\Qt5.9.2\5.9.2\msvc2015_64\bin ## The version of Qt. Version = 5.9.2 ## The compiler version, if you are not sure what to use, have a look into the derectory set in QtSDK/Path. ## The compiler must be of the same type as General/KDECOMPILER. ## If you are using mingw please make sure you have installed the mingw using the Qt installer. Compiler = msvc2015_64 But then I get this error when recompiling karchive: Could not find a package configuration file provided by "Qt5" (requested version 5.7.0) with any of the following names: Qt5Config.cmake qt5-config.cmake Add the installation prefix of "Qt5" to CMAKE_PREFIX_PATH or set "Qt5_DIR" to a directory containing one of the above files. If "Qt5" provides a separate development package or SDK, be sure it has been installed. But in the path I specified: C:\Qt\Qt5.9.2\5.9.2\msvc2015_64\bin there is the Qt5Config.cmake I don't know how to proceed.
Which CMake version do you use ?
(In reply to Christophe Giboudeaux from comment #3) > Which CMake version do you use ? never mind, it's in the first post, sorry
This is not a cmake bug but it looks like you mixed binaries and your configuration. Can you please paste your ABI setting? Did you change it after you build some libraries? Can you paste the output of "where.exe cl" when called in your craft env?
> Can you please paste your ABI setting? Craft Root : C:\CraftRoot Craft : R:\ Version : master ABI : windows-msvc2015_64-cl Svn directory : C:\CraftRoot\download\svn Git directory : Q:\ Download directory : C:\CraftRoot\download > Did you change it after you build some libraries? No, I only have MSVC 2015 and it has always been the 64bit version. > Can you paste the output of "where.exe cl" when called in your craft env? C:\Programme (x86)\MSVC2015\VC\bin\amd64\cl.exe
Ah now I saw the problem. It cant find Qt because ## The path to the Qt sdk. Path = C:\Qt\Qt5.9.2\5.9.2\msvc2015_64\bin is wrong It usually should be something like Path=C:\Qt Its meant to be the path where Qt is installed to, not the single version but the whole installation.
> It usually should be something like > Path=C:\Qt Ah, I found now the correct path, see https://bugs.kde.org/show_bug.cgi?id=386776 So my status is now the following: 1. at first I removed Craft completely 2. restarted Windows to start with a clean system 3. installed Craft following https://community.kde.org/Guidelines_and_HOWTOs/Build_from_source/Windows 4. in the craftsettings.ini I chose to get Release builds, not RelwithDebugInfo 5. installed ECM and karchive via craft Now ECM find karchive. I am pretty sure I haven't dome anything else than - using release builds - using the prebuilt Qt 5.9.2 libraries So for now it seems to work, except that I still cannot compile labplot because some framework packages fail, see https://bugs.kde.org/show_bug.cgi?id=386776
> Now ECM find karchive. I am pretty sure I haven't dome anything else than > - using release builds > - using the prebuilt Qt 5.9.2 libraries I also tried it out with RelWithDebInfo instead of Release in craftsettings.ini. I recompiled karchive using craft -i karchive the I deleted all CMake staff for labplot, and set up a new CMake project. This works too. So the only explanation for the bug I encountered is that I used the Qt libraries from craft and not the prebuilt ones from the official Qt for Windows installer for MSVC 2015. I read that KDE is patching Qt for their needs and maybe a mistake slipped in? From other projects they recommend to use only the official Qt installer for Windows. So maybe one should advise in https://community.kde.org/Guidelines_and_HOWTOs/Build_from_source/Windows that one should use an installed Qt.
I'm not sure what your current problem is?
> I'm not sure what your current problem is? When I compile karchive using the default settings in QtSDK (Qt libraries via craft9 then I get the bug in my initial comment of this bug report. When I compile using the installed Qt from qt.io (setting a QtSDK) it works. So there must be a bug either in EC or in the Qt libraries that come from craft.
Your initial problem was probably caused by a wrong setup, an x86 compiler in path when you where building for x64 or something like that.
> Your initial problem was probably caused by a wrong setup, an x86 compiler in path when you where building for x64 or something like that. OK, let's close it for now.