Important: Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

Qt5.6.1+CMake problem: QDesignerCustomWidgetInterface (and related) headers in wrong location



  • We're trying to upgrade from qt 5.6.0 to qt 5.6.1. We're building Qt from source, and having some problems with the location of the headers corresponding to the QtUiPlugin module.

    In qt5.6.0 these headers ended up in qtbase/include/QtUiPlugin and the CMake config files correctly set that location as INTERFACE_INCLUDE_DIRECTORIES to the Qt5::UiPlugin target.

    In qt5.6.1 these same headers end up in qttools/include/QtUiPlugin and the qtbase/include/QtUiPlugin folder remains empty (except for a QtUiPluginDepends file) - however, the CMake config files still point INTERFACE_INCLUDE_DIRECTORIES to the latter location (due to some hardcoded ../../../-stuff in there)

    The obvious result: we can't compile any designer plugins, because the QDesignerCustomWidgetInterface interface can't be found.

    Did the intended location for these headers change and did we hit a bug in the CMake-files? Or did we miss a setting for the build? We're using in-source builds (because the --prefix option does not work properly on Windows (7) )

    [Edit]
    We just looked up the arguments we passed to the configure script, maybe that helps figuring out what is going wrong:
    -debug-and-release
    -nomake
    examples
    -opengl
    desktop
    -opensource
    -force-debug-info



  • We fixed the problem ourselves - seems like our devop never did the install-step. So for future reference: building from source is 3 steps: configure, build, install

    Btw, there are many comments around the Internet that a prefix-build doesn't work very well for Windows: totally untrue. It works flawlessly, as long as you do what the documentation does, so RTFM


Log in to reply