KDAB / KDDockWidgets

KDAB's Dock Widget Framework for Qt
https://www.kdab.com/development-resources/qt-tools/kddockwidgets
Other
754 stars 163 forks source link

Link error when building KDDockWidgets #449

Closed zyrkiel closed 9 months ago

zyrkiel commented 9 months ago

Hi,

I am meeting some problems when building KDDockWidgets (SHA: e6e27eee)

Here is my setup:

I am using VCPKG, but I am facing the same issue with a local installation of Qt 6.6.0.
VCPKG packages installed:

My cmake config command: cmake --no-warn-unused-cli -DBUILD_SHARED_LIBS:BOOL=ON -DCMAKE_TOOLCHAIN_FILE=vcpkg/scripts/buildsystems/vcpkg.cmake -DVCPKG_MANIFEST_INSTALL:BOOL=ON -DKDDockWidgets_QT6=ON -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_INSTALL_PREFIX:STRING=install -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_C_COMPILER:FILEPATH=/usr/bin/clang-16 -DCMAKE_CXX_COMPILER:FILEPATH=/usr/bin/clang++-16 -S. -Bbuild -G "Unix Makefiles"

My cmake build command: cmake --build build --config Debug --target all -j 12

The build is going well until it reaches the link step. At this moment, it fails and raises the following error:

[build] [100%] Linking CXX executable ../../bin/qtwidgets_minimal
[build] /usr/bin/ld: /usr/bin/ld: DWARF error: invalid or unhandled FORM value: 0x23
[build] CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o: in function `KDDockWidgets::QtWidgets::View<QMainWindow>::childViews() const':
[build] mocs_compilation.cpp:(.text._ZNK13KDDockWidgets9QtWidgets4ViewI11QMainWindowE10childViewsEv[_ZNK13KDDockWidgets9QtWidgets4ViewI11QMainWindowE10childViewsEv]+0x1c): undefined reference to `KDDockWidgets::QtWidgets::View<QMainWindow>::childViewsFor(QWidget const*)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x38): undefined reference to `KDDockWidgets::QtWidgets::View<QMainWindow>::event(QEvent*)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x118): undefined reference to `KDDockWidgets::QtWidgets::View<QMainWindow>::closeEvent(QCloseEvent*)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x1c0): undefined reference to `KDDockWidgets::QtWidgets::View<QMainWindow>::setMinimumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x1e8): undefined reference to `KDDockWidgets::QtWidgets::View<QMainWindow>::setMaximumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x328): undefined reference to `KDDockWidgets::QtWidgets::View<QMainWindow>::childViewAt(QPoint) const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x330): undefined reference to `KDDockWidgets::QtWidgets::View<QMainWindow>::window() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x338): undefined reference to `KDDockWidgets::QtWidgets::View<QMainWindow>::rootView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x340): undefined reference to `KDDockWidgets::QtWidgets::View<QMainWindow>::parentView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x348): undefined reference to `KDDockWidgets::QtWidgets::View<QMainWindow>::asWrapper()'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x438): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QMainWindow>::setMinimumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x560): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QMainWindow>::setMaximumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x5e8): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QMainWindow>::childViewAt(QPoint) const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x5f0): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QMainWindow>::rootView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x5f8): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QMainWindow>::window() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x600): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QMainWindow>::parentView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o:(.data.rel.ro._ZTV12MyMainWindow+0x608): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QMainWindow>::asWrapper()'
[build] /usr/bin/ld: /usr/bin/ld: DWARF error: invalid or unhandled FORM value: 0x23
[build] CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o: in function `KDDockWidgets::QtWidgets::View<QWidget>::childViews() const':
[build] MyViewFactory.cpp:(.text._ZNK13KDDockWidgets9QtWidgets4ViewI7QWidgetE10childViewsEv[_ZNK13KDDockWidgets9QtWidgets4ViewI7QWidgetE10childViewsEv]+0x1c): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::childViewsFor(QWidget const*)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x38): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::event(QEvent*)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x118): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::closeEvent(QCloseEvent*)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x1b8): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::setMinimumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x1e0): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::setMaximumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x320): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::childViewAt(QPoint) const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x328): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::window() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x330): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::rootView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x338): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::parentView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x340): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::asWrapper()'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x428): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::setMinimumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x550): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::setMaximumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x5d8): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::childViewAt(QPoint) const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x5e0): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::rootView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x5e8): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::window() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x5f0): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::parentView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV10MyTitleBar+0x5f8): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::asWrapper()'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x38): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::event(QEvent*)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x118): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::closeEvent(QCloseEvent*)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x1b8): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::setMinimumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x1e0): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::setMaximumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x320): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::childViewAt(QPoint) const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x328): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::window() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x330): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::rootView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x338): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::parentView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x340): undefined reference to `KDDockWidgets::QtWidgets::View<QWidget>::asWrapper()'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x418): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::setMinimumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x540): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::setMaximumSize(QSize)'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x5c8): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::childViewAt(QPoint) const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x5d0): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::rootView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x5d8): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::window() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x5e0): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::parentView() const'
[build] /usr/bin/ld: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o:(.data.rel.ro._ZTV11MySeparator+0x5e8): undefined reference to `non-virtual thunk to KDDockWidgets::QtWidgets::View<QWidget>::asWrapper()'

Have you ever hear about something like this?

Thanks for your help

zyrkiel commented 9 months ago

In an outside project, I have tried to build the dockwidgets example using KDDockWidgets package from vcpkg and here what I got:

[build] [ 88%] Building CXX object CMakeFiles/qtwidgets_dockwidgets.dir/MyWidget.cpp.o
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/MyViewFactory.cpp:12:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyViewFactory.h:14:10: fatal error: 'kddockwidgets/qtwidgets/ViewFactory.h' file not found
[build] #include <kddockwidgets/qtwidgets/ViewFactory.h>
[build]          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build] 1 error generated.
[build] gmake[2]: *** [CMakeFiles/qtwidgets_dockwidgets.dir/build.make:116: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o] Error 1
[build] gmake[2]: *** Waiting for unfinished jobs....
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:9:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:17:29: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build]                             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]                             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:9:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:17:55: error: expected class name
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build]                                                       ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:38:21: error: only virtual member functions can be marked 'override'
[build]     ~MyMainWindow() override;
[build]                     ^~~~~~~~
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:42:5: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~
[build]     QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:9:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:42:5: error: no type named 'DockWidget' in 'QWidget'; did you mean 'QDockWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]     QDockWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:17:7: note: 'QDockWidget' declared here
[build] class QDockWidget;
[build]       ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:9:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:46:13: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:9:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:46:51: error: expected expression
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]                                                   ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:46:39: error: no member named 'DockWidget' in 'QWidget'
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ~~~~~~~~~~~~~~~~~~~~~~~~~~^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp:12:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:17:29: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build]                             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]                             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:77:34: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     QMetaObject::SuperData::link<KDDockWidgets::QtWidgets::MainWindow::staticMetaObject>(),
[build]                                  ^~~~~~~~~~~~~~~~~~~~~~~~
[build]                                  QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:77:34: error: no member named 'MainWindow' in 'QWidget'; did you mean 'QMainWindow'?
[build]     QMetaObject::SuperData::link<KDDockWidgets::QtWidgets::MainWindow::staticMetaObject>(),
[build]                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]                                  QMainWindow
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:24:24: note: 'QMainWindow' declared here
[build] class Q_WIDGETS_EXPORT QMainWindow : public QWidget
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:99:21: error: invalid use of non-static data member 'd_ptr'
[build]     return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
[build]            ~~~~~~~~~^~~~~
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:99:21: error: 'd_ptr' is a protected member of 'QObject'
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtCore/qobject.h/home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp::33612::
[build] 33/home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:: 17note: :declared protected here55
[build] : error: expected class name
[build]     QScopedPointer<QObjectData> d_ptr;
[build]                                 ^
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build] In file included from                                                       ^/home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp
[build] :2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:99:50: error: invalid use of non-static data member 'd_ptr'
[build]     return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
[build]                                         ~~~~~~~~~^~~~~
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:99:50: error: 'd_ptr' is a protected member of 'QObject'
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtCore/qobject.h:336:33: note: declared protected here
[build]     QScopedPointer<QObjectData> d_ptr;
[build]                                 ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:38:21: error: only virtual member functions can be marked 'override'
[build]     ~MyMainWindow() override;
[build]                     ^~~~~~~~
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:107:12: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     return KDDockWidgets::QtWidgets::MainWindow::qt_metacast(_clname);
[build]            ^~~~~~~~~~~~~~~~~~~~~~~~
[build]            QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:42:5: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~
[build]     QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:107:12: error: no member named 'MainWindow' in 'QWidget'; did you mean 'QMainWindow'?
[build]     return KDDockWidgets::QtWidgets::MainWindow::qt_metacast(_clname);
[build]            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]            QMainWindow
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:24:24: note: 'QMainWindow' declared here
[build] class Q_WIDGETS_EXPORT QMainWindow : public QWidget
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:107:50: error: call to non-static member function without an object argument
[build]     return KDDockWidgets::QtWidgets::MainWindow::qt_metacast(_clname);
[build]            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp:12:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:42:5: error: no type named 'DockWidget' in 'QWidget'; did you mean 'QDockWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]     QDockWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:17:7: note: 'QDockWidget' declared here
[build] class QDockWidget;
[build]       ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:112:11: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     _id = KDDockWidgets::QtWidgets::MainWindow::qt_metacall(_c, _id, _a);
[build]           ^~~~~~~~~~~~~~~~~~~~~~~~
[build]           QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp:12:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:13: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:112:11: error: no member named 'MainWindow' in 'QWidget'; did you mean 'QMainWindow'?
[build]     _id = KDDockWidgets::QtWidgets::MainWindow::qt_metacall(_c, _id, _a);
[build]           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]           QMainWindow
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:24:24: note: 'QMainWindow' declared here
[build] class Q_WIDGETS_EXPORT QMainWindow : public QWidget
[build]                        ^
[build] fatal error: too many errors emitted, stopping now [-ferror-limit=]
[build] 20 errors generated.
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp:12:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:51: error: expected expression
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]                                                   ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:39: error: no member named 'DockWidget' in 'QWidget'
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ~~~~~~~~~~~~~~~~~~~~~~~~~~^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp:19:10: fatal error: 'kddockwidgets/core/DockWidget.h' file not found
[build] #include <kddockwidgets/core/DockWidget.h>
[build]          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build] gmake[2]: *** [CMakeFiles/qtwidgets_dockwidgets.dir/build.make:88: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o] Error 1
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:13:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:17:29: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build]                             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]                             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/kddockwidgets-qt6/kddockwidgets/private/multisplitter/Widget_qwidget.h:17:7: note: 'QWidget' declared here
[build] class QWidget;
[build]       ^
[build] 9 errors generated.
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:13:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:17:55: error: expected class name
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build]                                                       ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:38:21: error: only virtual member functions can be marked 'override'
[build]     ~MyMainWindow() override;
[build]                     ^~~~~~~~
[build] gmake[2]: *** [CMakeFiles/qtwidgets_dockwidgets.dir/build.make:130: CMakeFiles/qtwidgets_dockwidgets.dir/MyMainWindow.cpp.o] Error 1
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:42:5: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~
[build]     QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/kddockwidgets-qt6/kddockwidgets/private/multisplitter/Widget_qwidget.h:17:7: note: 'QWidget' declared here
[build] class QWidget;
[build]       ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:13:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:42:5: error: no type named 'DockWidget' in 'QWidget'; did you mean 'QDockWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]     QDockWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:17:7: note: 'QDockWidget' declared here
[build] class QDockWidget;
[build]       ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:13:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:13: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/kddockwidgets-qt6/kddockwidgets/private/multisplitter/Widget_qwidget.h:17:7: note: 'QWidget' declared here
[build] class QWidget;
[build]       ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:13:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:51: error: expected expression
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]                                                   ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:39: error: no member named 'DockWidget' in 'QWidget'
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ~~~~~~~~~~~~~~~~~~~~~~~~~~^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:14:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyViewFactory.h:14:10: fatal error: 'kddockwidgets/qtwidgets/ViewFactory.h' file not found
[build] #include <kddockwidgets/qtwidgets/ViewFactory.h>
[build]          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build] 9 errors generated.
[build] gmake[2]: *** [CMakeFiles/qtwidgets_dockwidgets.dir/build.make:102: CMakeFiles/qtwidgets_dockwidgets.dir/main.cpp.o] Error 1
[build] gmake[1]: *** [CMakeFiles/Makefile2:84: CMakeFiles/qtwidgets_dockwidgets.dir/all] Error 2
[build] gmake: *** [Makefile:91: all] Error 2

It seems that the issue is coming from the same class.

zyrkiel commented 9 months ago

I have tried adding the following arguments to the config:
-DCMAKE_AR=/usr/bin/llvm-ar-16 -DCMAKE_AS=/usr/bin/llvm-as-16 -DCMAKE_RANLIB=/usr/bin/llvm-ranlib-16

However, it is not changing the result

iamsergio commented 9 months ago

Hi,

Since you say it also happens with local installation of Qt let's debug that instead, so we have fewer layers to debug. So, without any vcpkg, try:

cmake --preset=release6
cd build-release6
ninja

(install ninja if needed)

zyrkiel commented 9 months ago

Using the preset release6 without vcpkg and giving the Qt dir thanks to the CMAKE_PREFIX_PATH succeeds to build the all project. Thanks.

I have tried to replace the CMAKE_PREFIX_PATH by the vcpkg variables to use its qt packages and the error is back.

I have tried again first config without vcpkg, while using Qt6 local installation and it turns out it is working. Sorry about that, I probably did a wrong config. The config command: cmake --no-warn-unused-cli -DBUILD_SHARED_LIBS:BOOL=ON -DCMAKE_PREFIX_PATH=~/Qt/6.6.0/gcc_64/lib/cmake/ -DKDDockWidgets_QT6=ON -DCMAKE_BUILD_TYPE:STRING=Debug -DCMAKE_INSTALL_PREFIX:STRING=install -DCMAKE_EXPORT_COMPILE_COMMANDS:BOOL=TRUE -DCMAKE_C_COMPILER:FILEPATH=/usr/bin/clang-16 -DCMAKE_CXX_COMPILER:FILEPATH=/usr/bin/clang++-16 -S. -Bbuild -G "Unix Makefiles" -DCMAKE_AR=/usr/bin/llvm-ar-16 -DCMAKE_AS=/usr/bin/llvm-as-16 -DCMAKE_RANLIB=/usr/bin/llvm-ranlib-16

So, it seems that something is wrong while using vcpkg but I don't get why.

iamsergio commented 9 months ago

In an outside project, I have tried to build the dockwidgets example using KDDockWidgets package from vcpkg and here what I got:

[build] [ 88%] Building CXX object CMakeFiles/qtwidgets_dockwidgets.dir/MyWidget.cpp.o
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/MyViewFactory.cpp:12:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyViewFactory.h:14:10: fatal error: 'kddockwidgets/qtwidgets/ViewFactory.h' file not found
[build] #include <kddockwidgets/qtwidgets/ViewFactory.h>
[build]          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build] 1 error generated.
[build] gmake[2]: *** [CMakeFiles/qtwidgets_dockwidgets.dir/build.make:116: CMakeFiles/qtwidgets_dockwidgets.dir/MyViewFactory.cpp.o] Error 1
[build] gmake[2]: *** Waiting for unfinished jobs....
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:9:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:17:29: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build]                             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]                             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:9:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:17:55: error: expected class name
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build]                                                       ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:38:21: error: only virtual member functions can be marked 'override'
[build]     ~MyMainWindow() override;
[build]                     ^~~~~~~~
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:42:5: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~
[build]     QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:9:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:42:5: error: no type named 'DockWidget' in 'QWidget'; did you mean 'QDockWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]     QDockWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:17:7: note: 'QDockWidget' declared here
[build] class QDockWidget;
[build]       ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:9:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:46:13: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:9:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:46:51: error: expected expression
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]                                                   ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/../../../MyMainWindow.h:46:39: error: no member named 'DockWidget' in 'QWidget'
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ~~~~~~~~~~~~~~~~~~~~~~~~~~^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp:12:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:17:29: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build]                             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]                             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:77:34: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     QMetaObject::SuperData::link<KDDockWidgets::QtWidgets::MainWindow::staticMetaObject>(),
[build]                                  ^~~~~~~~~~~~~~~~~~~~~~~~
[build]                                  QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:77:34: error: no member named 'MainWindow' in 'QWidget'; did you mean 'QMainWindow'?
[build]     QMetaObject::SuperData::link<KDDockWidgets::QtWidgets::MainWindow::staticMetaObject>(),
[build]                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]                                  QMainWindow
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:24:24: note: 'QMainWindow' declared here
[build] class Q_WIDGETS_EXPORT QMainWindow : public QWidget
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:99:21: error: invalid use of non-static data member 'd_ptr'
[build]     return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
[build]            ~~~~~~~~~^~~~~
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:99:21: error: 'd_ptr' is a protected member of 'QObject'
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtCore/qobject.h/home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp::33612::
[build] 33/home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:: 17note: :declared protected here55
[build] : error: expected class name
[build]     QScopedPointer<QObjectData> d_ptr;
[build]                                 ^
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build] In file included from                                                       ^/home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp
[build] :2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:99:50: error: invalid use of non-static data member 'd_ptr'
[build]     return QObject::d_ptr->metaObject ? QObject::d_ptr->dynamicMetaObject() : &staticMetaObject;
[build]                                         ~~~~~~~~~^~~~~
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:99:50: error: 'd_ptr' is a protected member of 'QObject'
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtCore/qobject.h:336:33: note: declared protected here
[build]     QScopedPointer<QObjectData> d_ptr;
[build]                                 ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:38:21: error: only virtual member functions can be marked 'override'
[build]     ~MyMainWindow() override;
[build]                     ^~~~~~~~
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:107:12: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     return KDDockWidgets::QtWidgets::MainWindow::qt_metacast(_clname);
[build]            ^~~~~~~~~~~~~~~~~~~~~~~~
[build]            QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:42:5: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~
[build]     QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:107:12: error: no member named 'MainWindow' in 'QWidget'; did you mean 'QMainWindow'?
[build]     return KDDockWidgets::QtWidgets::MainWindow::qt_metacast(_clname);
[build]            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]            QMainWindow
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:24:24: note: 'QMainWindow' declared here
[build] class Q_WIDGETS_EXPORT QMainWindow : public QWidget
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:107:50: error: call to non-static member function without an object argument
[build]     return KDDockWidgets::QtWidgets::MainWindow::qt_metacast(_clname);
[build]            ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp:12:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:42:5: error: no type named 'DockWidget' in 'QWidget'; did you mean 'QDockWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]     QDockWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:17:7: note: 'QDockWidget' declared here
[build] class QDockWidget;
[build]       ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:112:11: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     _id = KDDockWidgets::QtWidgets::MainWindow::qt_metacall(_c, _id, _a);
[build]           ^~~~~~~~~~~~~~~~~~~~~~~~
[build]           QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp:12:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:13: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qwidget.h:98:24: note: 'QWidget' declared here
[build] class Q_WIDGETS_EXPORT QWidget : public QObject, public QPaintDevice
[build]                        ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp:2:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/qtwidgets_dockwidgets_autogen/EWIEGA46WW/moc_MyMainWindow.cpp:112:11: error: no member named 'MainWindow' in 'QWidget'; did you mean 'QMainWindow'?
[build]     _id = KDDockWidgets::QtWidgets::MainWindow::qt_metacall(_c, _id, _a);
[build]           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]           QMainWindow
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:24:24: note: 'QMainWindow' declared here
[build] class Q_WIDGETS_EXPORT QMainWindow : public QWidget
[build]                        ^
[build] fatal error: too many errors emitted, stopping now [-ferror-limit=]
[build] 20 errors generated.
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp:12:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:51: error: expected expression
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]                                                   ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:39: error: no member named 'DockWidget' in 'QWidget'
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ~~~~~~~~~~~~~~~~~~~~~~~~~~^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.cpp:19:10: fatal error: 'kddockwidgets/core/DockWidget.h' file not found
[build] #include <kddockwidgets/core/DockWidget.h>
[build]          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build] gmake[2]: *** [CMakeFiles/qtwidgets_dockwidgets.dir/build.make:88: CMakeFiles/qtwidgets_dockwidgets.dir/qtwidgets_dockwidgets_autogen/mocs_compilation.cpp.o] Error 1
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:13:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:17:29: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build]                             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]                             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/kddockwidgets-qt6/kddockwidgets/private/multisplitter/Widget_qwidget.h:17:7: note: 'QWidget' declared here
[build] class QWidget;
[build]       ^
[build] 9 errors generated.
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:13:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:17:55: error: expected class name
[build] class MyMainWindow : public KDDockWidgets::QtWidgets::MainWindow
[build]                                                       ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:38:21: error: only virtual member functions can be marked 'override'
[build]     ~MyMainWindow() override;
[build]                     ^~~~~~~~
[build] gmake[2]: *** [CMakeFiles/qtwidgets_dockwidgets.dir/build.make:130: CMakeFiles/qtwidgets_dockwidgets.dir/MyMainWindow.cpp.o] Error 1
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:42:5: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~
[build]     QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/kddockwidgets-qt6/kddockwidgets/private/multisplitter/Widget_qwidget.h:17:7: note: 'QWidget' declared here
[build] class QWidget;
[build]       ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:13:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:42:5: error: no type named 'DockWidget' in 'QWidget'; did you mean 'QDockWidget'?
[build]     KDDockWidgets::QtWidgets::DockWidget *newDockWidget();
[build]     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build]     QDockWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/Qt6/QtWidgets/qmainwindow.h:17:7: note: 'QDockWidget' declared here
[build] class QDockWidget;
[build]       ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:13:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:13: error: no member named 'QtWidgets' in namespace 'KDDockWidgets'; did you mean 'QWidget'?
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ^~~~~~~~~~~~~~~~~~~~~~~~
[build]             QWidget
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/build/vcpkg_installed/x64-linux/include/kddockwidgets-qt6/kddockwidgets/private/multisplitter/Widget_qwidget.h:17:7: note: 'QWidget' declared here
[build] class QWidget;
[build]       ^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:13:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:51: error: expected expression
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]                                                   ^
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyMainWindow.h:46:39: error: no member named 'DockWidget' in 'QWidget'
[build]     QVector<KDDockWidgets::QtWidgets::DockWidget *> m_dockwidgets;
[build]             ~~~~~~~~~~~~~~~~~~~~~~~~~~^
[build] In file included from /home/XXXXXX/GitRepo/git/dockwidgets_example/main.cpp:14:
[build] /home/XXXXXX/GitRepo/git/dockwidgets_example/MyViewFactory.h:14:10: fatal error: 'kddockwidgets/qtwidgets/ViewFactory.h' file not found
[build] #include <kddockwidgets/qtwidgets/ViewFactory.h>
[build]          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[build] 9 errors generated.
[build] gmake[2]: *** [CMakeFiles/qtwidgets_dockwidgets.dir/build.make:102: CMakeFiles/qtwidgets_dockwidgets.dir/main.cpp.o] Error 1
[build] gmake[1]: *** [CMakeFiles/Makefile2:84: CMakeFiles/qtwidgets_dockwidgets.dir/all] Error 2
[build] gmake: *** [Makefile:91: all] Error 2

It seems that the issue is coming from the same class.

The kddw vcpkg is not maintained by us, and it seems to target v1.5, while you're on 2.0

zyrkiel commented 9 months ago

Ok, it's good to know.
The fact that the vcpkg qt packages don't work to link kddw is not of your fault.
I close this issue. Thanks again!

winterz commented 8 months ago

fyi: vcpkg is now providing kddockwidgets 2.0.0 since vcpkg commit e25c595cbdaaa5a97d913be9a3c4b6af0203493b maybe that helps you