Opened 6 years ago
Closed 6 years ago
#18801 closed defect (fixed)
Trunk does not compile on latest OpenSuse Tumbleweed
Reported by: | Frank Batschulat (Oracle) | Owned by: | Frank Batschulat (Oracle) |
---|---|---|---|
Component: | other | Version: | VirtualBox 6.0.10 |
Keywords: | opensuse | Cc: | |
Guest type: | all | Host type: | Linux |
Description
Trunk does not compile on latest OpenSuse Tumbleweed installation and bails out with an internal compiler error after warnings.
Here are the details:
1) OS version:
hpbox:/site/sw/linux # uname -a Linux hpbox 5.2.2-1-default #1 SMP Mon Jul 22 10:29:33 UTC 2019 (adfddac) x86_64 x86_64 x86_64 GNU/Linux hpbox:/ # cat /etc/os-release NAME="openSUSE Tumbleweed" # VERSION="20190726" ID="opensuse-tumbleweed" ID_LIKE="opensuse suse" VERSION_ID="20190726" PRETTY_NAME="openSUSE Tumbleweed" ANSI_COLOR="0;32" CPE_NAME="cpe:/o:opensuse:tumbleweed:20190726" BUG_REPORT_URL="https://bugs.opensuse.org" HOME_URL="https://www.opensuse.org/" LOGO="distributor-logo"
2) gcc / g++ version:
VBox/Trunk fbatschu@hpbox trunk $ cc -v Using built-in specs. COLLECT_GCC=cc COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/9/lto-wrapper OFFLOAD_TARGET_NAMES=hsa:nvptx-none Target: x86_64-suse-linux Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,ada,go,d --enable-offload-targets=hsa,nvptx-none=/usr/nvptx-none, --without-cuda-driver --disable-werror --with-gxx-include-dir=/usr/include/c++/9 --enable-ssp --disable-libssp --disable-libvtv --disable-cet --disable-libcc1 --enable-plugin --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-libphobos --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-9 --without-system-libunwind --enable-multilib --with-arch-32=x86-64 --with-tune=generic --with-build-config=bootstrap-lto-lean --enable-link-mutex --build=x86_64-suse-linux --host=x86_64-suse-linux Thread model: posix gcc version 9.1.1 20190723 [gcc-9-branch revision 273734] (SUSE Linux)
Box/Trunk fbatschu@hpbox trunk $ g++ -v Using built-in specs. COLLECT_GCC=g++ COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/9/lto-wrapper OFFLOAD_TARGET_NAMES=hsa:nvptx-none Target: x86_64-suse-linux Configured with: ../configure --prefix=/usr --infodir=/usr/share/info --mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64 --enable-languages=c,c++,objc,fortran,obj-c++,ada,go,d --enable-offload-targets=hsa,nvptx-none=/usr/nvptx-none, --without-cuda-driver --disable-werror --with-gxx-include-dir=/usr/include/c++/9 --enable-ssp --disable-libssp --disable-libvtv --disable-cet --disable-libcc1 --enable-plugin --with-bugurl=https://bugs.opensuse.org/ --with-pkgversion='SUSE Linux' --with-slibdir=/lib64 --with-system-zlib --enable-libstdcxx-allocator=new --disable-libstdcxx-pch --enable-libphobos --enable-version-specific-runtime-libs --with-gcc-major-version-only --enable-linker-build-id --enable-linux-futex --enable-gnu-indirect-function --program-suffix=-9 --without-system-libunwind --enable-multilib --with-arch-32=x86-64 --with-tune=generic --with-build-config=bootstrap-lto-lean --enable-link-mutex --build=x86_64-suse-linux --host=x86_64-suse-linux Thread model: posix gcc version 9.1.1 20190723 [gcc-9-branch revision 273734] (SUSE Linux)
3) XXX build error, internal compiler error:
kBuild: Compiling vboxsoap - /site/ws/vbox/trunk/tools/common/gsoap/v2.8.72/stdsoap2.cpp /site/ws/vbox/trunk/tools/common/gsoap/v2.8.72/stdsoap2.cpp: In function ‘int fsend(soap*, const char*, size_t)’: /site/ws/vbox/trunk/tools/common/gsoap/v2.8.72/stdsoap2.cpp:644:34: warning: logical ‘and’ of equal expressions [-Wlogical-op]
644 | if (err != SOAP_EAGAIN && err != SOAP_EWOULDBLOCK)
/site/ws/vbox/trunk/tools/common/gsoap/v2.8.72/stdsoap2.cpp:746:37: warning: logical ‘or’ of equal expressions [-Wlogical-op]
746 | if (err == SOAP_EWOULDBLOCK err == SOAP_EAGAIN)
/site/ws/vbox/trunk/tools/common/gsoap/v2.8.72/stdsoap2.cpp: In function ‘size_t frecv(soap*, char*, size_t)’: /site/ws/vbox/trunk/tools/common/gsoap/v2.8.72/stdsoap2.cpp:1069:32: warning: logical ‘and’ of equal expressions [-Wlogical-op]
1069 | if (r != SOAP_EAGAIN && r != SOAP_EWOULDBLOCK)
/site/ws/vbox/trunk/tools/common/gsoap/v2.8.72/stdsoap2.cpp:1174:30: warning: logical ‘and’ of equal expressions [-Wlogical-op]
1174 | if (r != SOAP_EAGAIN && r != SOAP_EWOULDBLOCK)
The failing command: @g++ -c -g -g -pipe -pedantic -Wshadow -Wall -Wextra -Wno-missing-field-initializers -Wno-unused -Wno-trigraphs -fdiagnostics-show-option -Wno-unused-parameter -Wlogical-op -Wno-variadic-macros -Wno-long-long -Wunused-variable -Wunused-function -Wunused-label -Wunused-parameter -Wno-overloaded-virtual -Wno-array-bounds -Wno-ignored-qualifiers -Wno-variadic-macros -O0 -fno-omit-frame-pointer -fno-strict-aliasing -Wno-unused-parameter -Wno-shadow -Wno-parentheses -Wno-literal-suffix -Wno-stringop-overflow -Wno-stringop-truncation -Wno-vla -Wno-format -Wno-deprecated-declarations -m64 -I/site/ws/vbox/trunk/tools/common/gsoap/v2.8.72 -I/site/ws/vbox/trunk/tools/common/gsoap/v2.8.72/import -I/site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice -I/site/ws/vbox/trunk/src/VBox/Main/webservice -I/site/ws/vbox/trunk/out/linux.amd64/debug/obj/vboxsoap/dtrace -I/site/ws/vbox/trunk/out/linux.amd64/debug/obj/crypto-1.1.1-headers/include -I/site/ws/vbox/trunk/include -I/site/ws/vbox/trunk/out/linux.amd64/debug -DVBOX -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_REM -DDEBUG -DDEBUG_fbatschu -DDEBUG_USERNAME=fbatschu -DRT_OS_LINUX -D_FILE_OFFSET_BITS=64 -DRT_ARCH_AMD64 -DAMD64 -DVBOX_WITH_DEBUGGER -DRT_LOCK_STRICT -DRT_LOCK_STRICT_ORDER -DIN_RING3 -DGC_ARCH_BITS=64 -DVBOX_WITH_DTRACE -DVBOX_WITH_DTRACE_R3 -DWITH_OPENSSL -DHC_ARCH_BITS=64 -Wp,-MD,/site/ws/vbox/trunk/out/linux.amd64/debug/obj/vboxsoap/gen/webservice/soapC-1.o.dep -Wp,-MT,/site/ws/vbox/trunk/out/linux.amd64/debug/obj/vboxsoap/gen/webservice/soapC-1.o -Wp,-MP -o /site/ws/vbox/trunk/out/linux.amd64/debug/obj/vboxsoap/gen/webservice/soapC-1.o /site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice/soapC-1.cpp kBuild: Compiling vboxsoap - /site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice/soapC-1.cpp In file included from /site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice/soapC-1.cpp:19: /site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice/soapH.h: In function ‘int soap_GET_vboxIProcess_USCOREgetArguments(soap*, const char*, vboxIProcess_USCOREgetArguments*)’: /site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice/soapH.h:377329: note: ‘-Wmisleading-indentation’ is disabled from this point onwards, since column-tracking was disabled due to the size of the code/headers 377329 | return SOAP_OK;
|
during GIMPLE pass: printf-return-value /site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice/soapC-1.cpp: In function ‘int soap_putelement(soap*, const void*, const char*, int, int)’: /site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice/soapC-1.cpp:19791: internal compiler error: in subspan, at input.h:68 19791 | SOAP_FMAC3 int SOAP_FMAC4 soap_putelement(struct soap *soap, const void *ptr, const char *tag, int id, int type)
|
Please submit a full bug report, with preprocessed source if appropriate. See <https://bugs.opensuse.org/> for instructions. kmk: * /site/ws/vbox/trunk/out/linux.amd64/debug/obj/vboxsoap/gen/webservice/soapC-1.o Error 1 kmk: * Waiting for unfinished jobs.... kBuild: Compiling vboxsoap - /site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice/soapC-2.cpp In file included from /site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice/soapC-2.cpp:1: /site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice/soapH.h: In function ‘int soap_GET_vboxIProcess_USCOREgetArguments(soap*, const char*, vboxIProcess_USCOREgetArguments*)’: /site/ws/vbox/trunk/out/linux.amd64/debug/obj/webservice/soapH.h:377329: note: ‘-Wmisleading-indentation’ is disabled from this point onwards, since column-tracking was disabled due to the size of the code/headers 377329 | return SOAP_OK;
|
kmk: * Exiting with status 2
4) Opensuses working Virtualbox:
We know that the OpenSuse folks at least got the previous version properly compiled:
#zypper info virtualbox Loading repository data... Reading installed packages...
Information for package virtualbox:
Repository : openSUSE-Tumbleweed-Oss Name : virtualbox Version : 6.0.8-3.5 Arch : x86_64 Vendor : openSUSE Installed Size : 39,0 MiB Installed : Yes Status : up-to-date Source package : virtualbox-6.0.8-3.5.src Summary : VirtualBox is an Emulator
Attachments (3)
Change History (13)
comment:1 by , 6 years ago
comment:2 by , 6 years ago
fwiw, compiling and packaging the guest additions only with
trunk $ kmk VBOX_ONLY_ADDITIONS=1 trunk $ kmk packing VBOX_ONLY_ADDITIONS=1
works without any problems.
by , 6 years ago
Attachment: | package-list-05042019-hpbox.txt.bz2 added |
---|
Package list from my build server
comment:3 by , 6 years ago
It does not matter wheter or not you declare in LocalConfig.kmk VBOX_WITH_TOOLS_QT_LINUX := 1 or VBOX_WITH_TOOLS_QT_LINUX := to use the VBOX version vrs the OS version.
the error, the error message and the files complained about stays the same and needs to be resolved.
comment:4 by , 6 years ago
We have the following problematic places: 1) invalid use of incomplete type ‘class QStringList’ ------------------------------------------------------ In file included from /site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.h:32, from /site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.cpp:19: /site/ws/vbox/trunk/out/linux.amd64/debug/obj/UICommon/include/CVirtualBox.h:336:93: error: invalid use of incomplete type ‘class QStringList’ 336 | QStringList GetExtraDataStringList(const QString &strKey, QStringList def = QStringList()); https://doc.qt.io/qt-5/qstringlist.html Qt 5.13 QStringList Class The QStringList class provides a list of strings. More... Header: #include <QStringList> qmake: QT += core Inherits: QList "trunk/src/VBox/Frontends/VirtualBox/precomptricks/QStringList" 3L, 39C 1 #pragma once 2 #include "qstringlist.h" 2) invalid use of incomplete type ‘class QList<int>’ ---------------------------------------------------- In file included from /site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.h:32, from /site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.cpp:19: /site/ws/vbox/trunk/out/linux.amd64/debug/obj/UICommon/include/CVirtualBox.h:338:87: error: invalid use of incomplete type ‘class QList<int>’ 338 | QList<int> GetExtraDataIntList(const QString &strKey, QList<int> def = QList<int>()); https://doc.qt.io/qt-5/qlist.html Qt 5.13 QList Class The QList class is a template class that provides lists. More... Header: #include <QList> qmake: QT += core Inherited By: QByteArrayList, QItemSelection, QQueue, and QStringList ------------------------------------------------------------- trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.h 24 /* Qt includes: */ 25 #include <QString> 32 #include "CVirtualBox.h" ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ XXX possible fix: #include <Qlist> #include <QStringList> fbatschu@hpbox:/usr/include> cat ./qt5/QtCore/QStringList #include "qstringlist.h" fbatschu@hpbox:/usr/include> find . -name qstringlist.h -ls 3101765 16 -rw-r--r-- 1 root root 12425 Jun 13 06:18 ./qt5/QtCore/qstringlist.h fbatschu@hpbox:/usr/include> zypper info libqt5-qtdoc Loading repository data... Reading installed packages... Information for package libqt5-qtdoc: ------------------------------------- Repository : openSUSE-Tumbleweed-Oss Name : libqt5-qtdoc Version : 5.13.0-1.2 Arch : noarch Vendor : openSUSE Installed Size : 152.2 KiB Installed : No Status : not installed Source package : libqt5-qtdoc-5.13.0-1.2.src Summary : Qt 5 API Documentation Description : Qt is a set of libraries for developing applications. This package pulls in the API documentation in HTML and QCH format. out/linux.amd64/debug/obj/UICommon/include/CVirtualBox.h 2 * DO NOT EDIT! This is a generated file. 3 * 4 * Qt-based wrapper declaration for VirtualBox Main API (COM) interface. 5 * Generated from XIDL (XML interface definition). 6 * 7 * Source : src/VBox/Main/idl/VirtualBox.xidl 8 * Generator : src/VBox/Frontends/VirtualBox/src/globals/COMWrappers.xsl 9 */ 11 #ifndef __CVirtualBox_h__ 12 #define __CVirtualBox_h__ 13 14 /* Qt includes: */ 15 #include <QRect> 16 17 /* GUI includes: */ 18 #include "COMDefs.h" 19 #include "UILibraryDefs.h" 20 21 /* VirtualBox interface declarations: */ 22 #ifndef VBOX_WITH_LESS_VIRTUALBOX_INCLUDING 23 # include <VBox/com/VirtualBox.h> 24 #else 25 COM_STRUCT_OR_CLASS(IVirtualBox); 26 #endif 336 QStringList GetExtraDataStringList(const QString &strKey, QStringList def = QStringList()); 338 QList<int> GetExtraDataIntList(const QString &strKey, QList<int> def = QList<int>()); VBox/Trunk fbatschu@hpbox trunk $ svn diff Index: src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.h =================================================================== --- src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.h (revision 132574) +++ src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.h (working copy) @@ -22,7 +22,9 @@ #endif /* Qt includes: */ +#include <QList> #include <QString> +#include <QStringList> /* GUI includes: */ #include "UILibraryDefs.h" kBuild: Compiling UICommon - /site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.cpp kBuild: Compiling UICommon - /site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMedium.cpp ------------------------------------- XXX And after fixing that error, we run into the next error: kBuild: Compiling UICommon - /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/qtmoc/VBoxLicenseViewer.cpp The failing command: @g++ -c -g -fPIC -g -pipe -Wall -Wextra -Wno-missing-field-initializers -Wno-trigraphs -fdiagnostics-show-option -Wlogical-op -Wno-variadic-macros -frtti -fno-exceptions -Wno-long-long -fshort-wchar -fno-strict-aliasing -fvisibility=hidden -DVBOX_HAVE_VISIBILITY_HIDDEN -DRT_USE_VISIBILITY_DEFAULT -fvisibility-inlines-hidden -Wno-multistatement-macros -Wno-ignored-qualifiers -std=c++11 -fPIC -pthread -m64 -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/cloud -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/converter -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/extensions -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/extensions/graphics -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/extradata -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/globals -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/hostnetwork -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/logviewer -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/medium -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/medium/viso -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/objects -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/platform -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/platform/darwin -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/platform/win -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/platform/x11 -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime/seamless -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime/information -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/guestctrl -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/settings -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/settings/global -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/settings/machine -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/softkeyboard -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/snapshots -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/widgets -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/widgets/graphics -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/newcloudvm -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvd -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevm -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/importappliance -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/firstrun -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/manager -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/manager/chooser -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/manager/details -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/manager/tools -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/net -I/site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/xpcom -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/string -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/xpcom -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/nsprpub -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/ipcd -I/usr/include/qt5/QtX11Extras -I/usr/include/qt5/QtCore -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtOpenGL -I/usr/include/qt5 -I/site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/qtmoc -I/site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/qtuic -I/site/ws/vb2/trunk/include -I/site/ws/vb2/trunk/out/linux.amd64/debug -DVBOX -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_REM -DDEBUG -DDEBUG_fbatschu -DDEBUG_USERNAME=fbatschu -DRT_OS_LINUX -D_FILE_OFFSET_BITS=64 -DRT_ARCH_AMD64 -D__AMD64__ -DVBOX_WITH_DEBUGGER -DRT_LOCK_STRICT -DRT_LOCK_STRICT_ORDER -DPIC -DIN_RING3 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DHAVE_CONFIG_H -DHC_ARCH_BITS=64 -DGC_ARCH_BITS=64 -DVBOX_WITH_XPCOM -DVBOX_WITH_XPCOM_NAMESPACE_CLEANUP -DPIC -DVBOX_GUI_LIBRARY -DVBOX_WITH_UPDATE_REQUEST -DVBOX_GUI_WITH_NEW_MEDIA_EVENTS -DVBOX_WITH_AUDIO_OSS -DVBOX_WITH_AUDIO_ALSA -DVBOX_WITH_AUDIO_PULSE -DVBOX_WITH_E1000 -DVBOX_WITH_NETFLT -DVBOX_WITH_VDE -DVBOX_WITH_EXTPACK -DVBOX_WITH_DRAG_AND_DROP -DVBOX_WITH_CRHGSMI -DVBOX_WITH_VIRTIO -DVBOX_WITH_CROGL -DVBOX_WITH_DEBUGGER_GUI -DVBOX_WITH_DEBUGGER_GUI_MENU -DVBOX_WITH_VIDEOHWACCEL -DVBOX_GUI_USE_QGL -DVBOX_GUI_WITH_NETWORK_MANAGER -DVBOX_GUI_WITH_EXTRADATA_MANAGER_UI -DVBOX_WITH_LESS_VIRTUALBOX_INCLUDING -DQT_X11EXTRAS_LIB -DQT_CORE_LIB -DQT_GUI_LIB -DQT_WIDGETS_LIB -DQT_OPENGL_LIB -DVBOX_CHECK_STATE -D_REENTRANT -DVBOX_WS_X11 -Wp,-MD,/site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/gen/include/COMWrappers.o.dep -Wp,-MT,/site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/gen/include/COMWrappers.o -Wp,-MP -o /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/gen/include/COMWrappers.o /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp kBuild: Compiling UICommon - /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp In file included from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:23: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/CVirtualBox.h:336:93: error: invalid use of incomplete type ‘class QStringList’ 336 | QStringList GetExtraDataStringList(const QString &strKey, QStringList def = QStringList()); | ^ In file included from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qmetatype.h:108:24: note: forward declaration of ‘class QStringList’ 108 | F(QStringList, 11, QStringList) \ | ^~~~~~~~~~~ /usr/include/qt5/QtCore/qmetatype.h:1969:11: note: in definition of macro ‘QT_FORWARD_DECLARE_STATIC_TYPES_ITER’ 1969 | class Name; | ^~~~ /usr/include/qt5/QtCore/qmetatype.h:1971:1: note: in expansion of macro ‘QT_FOR_EACH_STATIC_CORE_CLASS’ 1971 | QT_FOR_EACH_STATIC_CORE_CLASS(QT_FORWARD_DECLARE_STATIC_TYPES_ITER) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:23: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/CVirtualBox.h:338:87: error: invalid use of incomplete type ‘class QList<int>’ 338 | QList<int> GetExtraDataIntList(const QString &strKey, QList<int> def = QList<int>()); | ^ In file included from /usr/include/qt5/QtCore/qglobal.h:1218, from /usr/include/qt5/QtCore/qmetatype.h:45, from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qtypeinfo.h:212:29: note: declaration of ‘class QList<int>’ 212 | Q_DECLARE_MOVABLE_CONTAINER(QList); | ^~~~~ /usr/include/qt5/QtCore/qtypeinfo.h:194:29: note: in definition of macro ‘Q_DECLARE_MOVABLE_CONTAINER’ 194 | template <typename T> class CONTAINER; \ | ^~~~~~~~~ In file included from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:34: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/CMachine.h:490:93: error: invalid use of incomplete type ‘class QStringList’ 490 | QStringList GetExtraDataStringList(const QString &strKey, QStringList def = QStringList()); | ^ In file included from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qmetatype.h:108:24: note: forward declaration of ‘class QStringList’ 108 | F(QStringList, 11, QStringList) \ | ^~~~~~~~~~~ /usr/include/qt5/QtCore/qmetatype.h:1969:11: note: in definition of macro ‘QT_FORWARD_DECLARE_STATIC_TYPES_ITER’ 1969 | class Name; | ^~~~ /usr/include/qt5/QtCore/qmetatype.h:1971:1: note: in expansion of macro ‘QT_FOR_EACH_STATIC_CORE_CLASS’ 1971 | QT_FOR_EACH_STATIC_CORE_CLASS(QT_FORWARD_DECLARE_STATIC_TYPES_ITER) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:34: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/CMachine.h:492:87: error: invalid use of incomplete type ‘class QList<int>’ 492 | QList<int> GetExtraDataIntList(const QString &strKey, QList<int> def = QList<int>()); | ^ In file included from /usr/include/qt5/QtCore/qglobal.h:1218, from /usr/include/qt5/QtCore/qmetatype.h:45, from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qtypeinfo.h:212:29: note: declaration of ‘class QList<int>’ 212 | Q_DECLARE_MOVABLE_CONTAINER(QList); | ^~~~~ /usr/include/qt5/QtCore/qtypeinfo.h:194:29: note: in definition of macro ‘Q_DECLARE_MOVABLE_CONTAINER’ 194 | template <typename T> class CONTAINER; \ | ^~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: In member function ‘QRect CVirtualBox::GetExtraDataRect(const QString&, const QRect&)’: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3793:16: error: variable ‘QList<int> intList’ has initializer but incomplete type 3793 | QList<int> intList = GetExtraDataIntList(strKey); | ^~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: In member function ‘void CVirtualBox::SetExtraDataStringList(const QString&, const QStringList&)’: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3806:26: error: invalid use of incomplete type ‘const class QStringList’ 3806 | SetExtraData(strKey, value.join(",")); | ^~~~~ In file included from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qmetatype.h:108:24: note: forward declaration of ‘class QStringList’ 108 | F(QStringList, 11, QStringList) \ | ^~~~~~~~~~~ /usr/include/qt5/QtCore/qmetatype.h:1969:11: note: in definition of macro ‘QT_FORWARD_DECLARE_STATIC_TYPES_ITER’ 1969 | class Name; | ^~~~ /usr/include/qt5/QtCore/qmetatype.h:1971:1: note: in expansion of macro ‘QT_FOR_EACH_STATIC_CORE_CLASS’ 1971 | QT_FOR_EACH_STATIC_CORE_CLASS(QT_FORWARD_DECLARE_STATIC_TYPES_ITER) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: At global scope: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3809:84: error: ‘def’ has incomplete type 3809 | QStringList CVirtualBox::GetExtraDataStringList(const QString &strKey, QStringList def /* = QStringList() */) | ~~~~~~~~~~~~^~~ In file included from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qmetatype.h:108:24: note: forward declaration of ‘class QStringList’ 108 | F(QStringList, 11, QStringList) \ | ^~~~~~~~~~~ /usr/include/qt5/QtCore/qmetatype.h:1969:11: note: in definition of macro ‘QT_FORWARD_DECLARE_STATIC_TYPES_ITER’ 1969 | class Name; | ^~~~ /usr/include/qt5/QtCore/qmetatype.h:1971:1: note: in expansion of macro ‘QT_FOR_EACH_STATIC_CORE_CLASS’ 1971 | QT_FOR_EACH_STATIC_CORE_CLASS(QT_FORWARD_DECLARE_STATIC_TYPES_ITER) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3809:109: error: return type ‘class QStringList’ is incomplete 3809 | QStringList CVirtualBox::GetExtraDataStringList(const QString &strKey, QStringList def /* = QStringList() */) | ^ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: In member function ‘void CVirtualBox::GetExtraDataStringList(const QString&, QStringList)’: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3815:34: error: invalid use of incomplete type ‘class QStringList’ 3815 | return strValue.split(","); | ^ In file included from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qmetatype.h:108:24: note: forward declaration of ‘class QStringList’ 108 | F(QStringList, 11, QStringList) \ | ^~~~~~~~~~~ /usr/include/qt5/QtCore/qmetatype.h:1969:11: note: in definition of macro ‘QT_FORWARD_DECLARE_STATIC_TYPES_ITER’ 1969 | class Name; | ^~~~ /usr/include/qt5/QtCore/qmetatype.h:1971:1: note: in expansion of macro ‘QT_FOR_EACH_STATIC_CORE_CLASS’ 1971 | QT_FOR_EACH_STATIC_CORE_CLASS(QT_FORWARD_DECLARE_STATIC_TYPES_ITER) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: In member function ‘void CVirtualBox::SetExtraDataIntList(const QString&, const QList<int>&)’: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3820:17: error: aggregate ‘QStringList strList’ has incomplete type and cannot be defined 3820 | QStringList strList; | ^~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3821:23: error: invalid use of incomplete type ‘const class QList<int>’ 3821 | for (int i=0; i < value.size(); ++i) | ^~~~~ In file included from /usr/include/qt5/QtCore/qglobal.h:1218, from /usr/include/qt5/QtCore/qmetatype.h:45, from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qtypeinfo.h:212:29: note: declaration of ‘class QList<int>’ 212 | Q_DECLARE_MOVABLE_CONTAINER(QList); | ^~~~~ /usr/include/qt5/QtCore/qtypeinfo.h:194:29: note: in definition of macro ‘Q_DECLARE_MOVABLE_CONTAINER’ 194 | template <typename T> class CONTAINER; \ | ^~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3822:36: error: invalid use of incomplete type ‘const class QList<int>’ 3822 | strList << QString::number(value.at(i)); | ^~~~~ In file included from /usr/include/qt5/QtCore/qglobal.h:1218, from /usr/include/qt5/QtCore/qmetatype.h:45, from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qtypeinfo.h:212:29: note: declaration of ‘class QList<int>’ 212 | Q_DECLARE_MOVABLE_CONTAINER(QList); | ^~~~~ /usr/include/qt5/QtCore/qtypeinfo.h:194:29: note: in definition of macro ‘Q_DECLARE_MOVABLE_CONTAINER’ 194 | template <typename T> class CONTAINER; \ | ^~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: At global scope: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3826:79: error: ‘def’ has incomplete type 3826 | QList<int> CVirtualBox::GetExtraDataIntList(const QString &strKey, QList<int> def /* = QList<int>() */) | ~~~~~~~~~~~^~~ In file included from /usr/include/qt5/QtCore/qglobal.h:1218, from /usr/include/qt5/QtCore/qmetatype.h:45, from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qtypeinfo.h:212:29: note: declaration of ‘class QList<int>’ 212 | Q_DECLARE_MOVABLE_CONTAINER(QList); | ^~~~~ /usr/include/qt5/QtCore/qtypeinfo.h:194:29: note: in definition of macro ‘Q_DECLARE_MOVABLE_CONTAINER’ 194 | template <typename T> class CONTAINER; \ | ^~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3826:103: error: return type ‘class QList<int>’ is incomplete 3826 | QList<int> CVirtualBox::GetExtraDataIntList(const QString &strKey, QList<int> def /* = QList<int>() */) | ^ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: In member function ‘void CVirtualBox::GetExtraDataIntList(const QString&, QList<int>)’: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3828:17: error: variable ‘QStringList strList’ has initializer but incomplete type 3828 | QStringList strList = GetExtraDataStringList(strKey); | ^~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:3831:20: error: aggregate ‘QList<int> intList’ has incomplete type and cannot be defined 3831 | QList<int> intList; | ^~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: In member function ‘QRect CMachine::GetExtraDataRect(const QString&, const QRect&)’: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10613:16: error: variable ‘QList<int> intList’ has initializer but incomplete type 10613 | QList<int> intList = GetExtraDataIntList(strKey); | ^~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: In member function ‘void CMachine::SetExtraDataStringList(const QString&, const QStringList&)’: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10626:26: error: invalid use of incomplete type ‘const class QStringList’ 10626 | SetExtraData(strKey, value.join(",")); | ^~~~~ In file included from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qmetatype.h:108:24: note: forward declaration of ‘class QStringList’ 108 | F(QStringList, 11, QStringList) \ | ^~~~~~~~~~~ /usr/include/qt5/QtCore/qmetatype.h:1969:11: note: in definition of macro ‘QT_FORWARD_DECLARE_STATIC_TYPES_ITER’ 1969 | class Name; | ^~~~ /usr/include/qt5/QtCore/qmetatype.h:1971:1: note: in expansion of macro ‘QT_FOR_EACH_STATIC_CORE_CLASS’ 1971 | QT_FOR_EACH_STATIC_CORE_CLASS(QT_FORWARD_DECLARE_STATIC_TYPES_ITER) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: At global scope: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10629:81: error: ‘def’ has incomplete type 10629 | QStringList CMachine::GetExtraDataStringList(const QString &strKey, QStringList def /* = QStringList() */) | ~~~~~~~~~~~~^~~ In file included from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qmetatype.h:108:24: note: forward declaration of ‘class QStringList’ 108 | F(QStringList, 11, QStringList) \ | ^~~~~~~~~~~ /usr/include/qt5/QtCore/qmetatype.h:1969:11: note: in definition of macro ‘QT_FORWARD_DECLARE_STATIC_TYPES_ITER’ 1969 | class Name; | ^~~~ /usr/include/qt5/QtCore/qmetatype.h:1971:1: note: in expansion of macro ‘QT_FOR_EACH_STATIC_CORE_CLASS’ 1971 | QT_FOR_EACH_STATIC_CORE_CLASS(QT_FORWARD_DECLARE_STATIC_TYPES_ITER) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10629:106: error: return type ‘class QStringList’ is incomplete 10629 | QStringList CMachine::GetExtraDataStringList(const QString &strKey, QStringList def /* = QStringList() */) | ^ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: In member function ‘void CMachine::GetExtraDataStringList(const QString&, QStringList)’: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10635:34: error: invalid use of incomplete type ‘class QStringList’ 10635 | return strValue.split(","); | ^ In file included from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qmetatype.h:108:24: note: forward declaration of ‘class QStringList’ 108 | F(QStringList, 11, QStringList) \ | ^~~~~~~~~~~ /usr/include/qt5/QtCore/qmetatype.h:1969:11: note: in definition of macro ‘QT_FORWARD_DECLARE_STATIC_TYPES_ITER’ 1969 | class Name; | ^~~~ /usr/include/qt5/QtCore/qmetatype.h:1971:1: note: in expansion of macro ‘QT_FOR_EACH_STATIC_CORE_CLASS’ 1971 | QT_FOR_EACH_STATIC_CORE_CLASS(QT_FORWARD_DECLARE_STATIC_TYPES_ITER) | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: In member function ‘void CMachine::SetExtraDataIntList(const QString&, const QList<int>&)’: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10640:17: error: aggregate ‘QStringList strList’ has incomplete type and cannot be defined 10640 | QStringList strList; | ^~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10641:23: error: invalid use of incomplete type ‘const class QList<int>’ 10641 | for (int i=0; i < value.size(); ++i) | ^~~~~ In file included from /usr/include/qt5/QtCore/qglobal.h:1218, from /usr/include/qt5/QtCore/qmetatype.h:45, from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qtypeinfo.h:212:29: note: declaration of ‘class QList<int>’ 212 | Q_DECLARE_MOVABLE_CONTAINER(QList); | ^~~~~ /usr/include/qt5/QtCore/qtypeinfo.h:194:29: note: in definition of macro ‘Q_DECLARE_MOVABLE_CONTAINER’ 194 | template <typename T> class CONTAINER; \ | ^~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10642:36: error: invalid use of incomplete type ‘const class QList<int>’ 10642 | strList << QString::number(value.at(i)); | ^~~~~ In file included from /usr/include/qt5/QtCore/qglobal.h:1218, from /usr/include/qt5/QtCore/qmetatype.h:45, from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qtypeinfo.h:212:29: note: declaration of ‘class QList<int>’ 212 | Q_DECLARE_MOVABLE_CONTAINER(QList); | ^~~~~ /usr/include/qt5/QtCore/qtypeinfo.h:194:29: note: in definition of macro ‘Q_DECLARE_MOVABLE_CONTAINER’ 194 | template <typename T> class CONTAINER; \ | ^~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: At global scope: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10646:76: error: ‘def’ has incomplete type 10646 | QList<int> CMachine::GetExtraDataIntList(const QString &strKey, QList<int> def /* = QList<int>() */) | ~~~~~~~~~~~^~~ In file included from /usr/include/qt5/QtCore/qglobal.h:1218, from /usr/include/qt5/QtCore/qmetatype.h:45, from /usr/include/qt5/QtCore/QMetaType:1, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMEnums.h:15, from /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:14: /usr/include/qt5/QtCore/qtypeinfo.h:212:29: note: declaration of ‘class QList<int>’ 212 | Q_DECLARE_MOVABLE_CONTAINER(QList); | ^~~~~ /usr/include/qt5/QtCore/qtypeinfo.h:194:29: note: in definition of macro ‘Q_DECLARE_MOVABLE_CONTAINER’ 194 | template <typename T> class CONTAINER; \ | ^~~~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10646:100: error: return type ‘class QList<int>’ is incomplete 10646 | QList<int> CMachine::GetExtraDataIntList(const QString &strKey, QList<int> def /* = QList<int>() */) | ^ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp: In member function ‘void CMachine::GetExtraDataIntList(const QString&, QList<int>)’: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10648:17: error: variable ‘QStringList strList’ has initializer but incomplete type 10648 | QStringList strList = GetExtraDataStringList(strKey); | ^~~~~~~ /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include/COMWrappers.cpp:10651:20: error: aggregate ‘QList<int> intList’ has incomplete type and cannot be defined 10651 | QList<int> intList; | ^~~~~~~ kmk: *** [/site/ws/vb2/trunk/kBuild/footer-pass2-compiling-targets.kmk:277: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/gen/include/COMWrappers.o] Error 1 kmk: *** Waiting for unfinished jobs.... kBuild: Compiling UICommon - /site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/qtmoc/UITakeSnapshotDialog.cpp kmk: *** Exiting with status 2 ### lets try a different approach, we know that the generated header file ### out/linux.amd64/debug/obj/UICommon/include/CVirtualBox.h ### at least has one Qt header file in it: 14 /* Qt includes: */ 15 #include <QRect> ### look for how we get it added during automated generation: trunk/src/VBox/Frontends/VirtualBox/src/globals/COMWrappers.xsl 301 <xsl:if test="@name='IVirtualBox' or @name='IMachine'"> 302 <xsl:text>/* Qt includes: */
</xsl:text> 303 <xsl:text>#include <QRect>

</xsl:text> 304 </xsl:if> [...] 480 <xsl:text> void SetExtraDataBool(const QString &strKey, bool fValue); 481 bool GetExtraDataBool(const QString &strKey, bool fDef = true); 482 void SetExtraDataInt(const QString &strKey, int value); 483 int GetExtraDataInt(const QString &strKey, int def = 0); 484 void SetExtraDataRect(const QString &strKey, const QRect &value); 485 QRect GetExtraDataRect(const QString &strKey, const QRect &def = QRect()); 486 void SetExtraDataStringList(const QString &strKey, const QStringList &value); 487 QStringList GetExtraDataStringList(const QString &strKey, QStringList def = QStringList()); 488 void SetExtraDataIntList(const QString &strKey, const QList<int> &value); 489 QList<int> GetExtraDataIntList(const QString &strKey, QList<int> def = QList<int>()); 490 491 </xsl:text> [...] 936 </xsl:text> 937 938 <xsl:text>QRect C</xsl:text> 939 <xsl:value-of select="substring(@name,2)"/> 940 <xsl:text>::GetExtraDataRect(const QString &strKey, const QRect &def /* = QRect() */)</xsl:text> 941 <xsl:text> [...] 965 </xsl:text> 966 967 <xsl:text>QStringList C</xsl:text> 968 <xsl:value-of select="substring(@name,2)"/> 969 <xsl:text>::GetExtraDataStringList(const QString &strKey, QStringList def /* = QStringList() */)</xsl:text> 970 <xsl:text> [...] 992 </xsl:text> 993 994 <xsl:text>QList<int> C</xsl:text> 995 <xsl:value-of select="substring(@name,2)"/> 996 <xsl:text>::GetExtraDataIntList(const QString &strKey, QList<int> def /* = QList<int>() */)</xsl:text> 997 <xsl:text> ### so with that we have all classes complained about togeter, ### QList, QStringList without corresponding header file and the working ### QRect with a corresponding header file. ### let's try to add the fix in there rather then what I did initally ### not changing src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.h ### but instead fix src/VBox/Frontends/VirtualBox/src/globals/COMWrappers.xsl ### to automatically generate a proper ### out/linux.amd64/debug/obj/UICommon/include/CVirtualBox.h XXX next potential fix: VBox/Trunk fbatschu@hpbox trunk $ svn diff Index: src/VBox/Frontends/VirtualBox/src/globals/COMWrappers.xsl =================================================================== --- src/VBox/Frontends/VirtualBox/src/globals/COMWrappers.xsl (revision 132574) +++ src/VBox/Frontends/VirtualBox/src/globals/COMWrappers.xsl (working copy) @@ -301,6 +301,8 @@ <xsl:if test="@name='IVirtualBox' or @name='IMachine'"> <xsl:text>/* Qt includes: */
</xsl:text> <xsl:text>#include <QRect>
</xsl:text> + <xsl:text>#include <QList>
</xsl:text> + <xsl:text>#include <QStringList>

</xsl:text> </xsl:if> <xsl:text>/* GUI includes: */
</xsl:text> <xsl:text>#include "COMDefs.h"
</xsl:text> ### This now generates: fbatschu@hpbox:/site/ws/vb2/trunk> grep "<Q" out/linux.amd64/debug/obj/UICommon/include/CVirtualBox.h #include <QRect> #include <QList> #include <QStringList> QVector<QString> GetMachineGroups() const; QVector<QString> GetInternalNetworks() const; QVector<QString> GetGenericNetworkDrivers() const; CMachine CreateMachine(const QString & aSettingsFile, const QString & aName, const QVector<QString> & aGroups, const QString & aOsTypeId, const QString & aFlags); QVector<CMachine> GetMachinesByGroups(const QVector<QString> & aGroups); QVector<QString> GetExtraDataKeys(); XXX Now the next error we then fall over is: kBuild: Compiling VirtualBox - /site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIApplianceUnverifiedCertificateViewer.cpp The failing command: @g++ -c -g -g -pipe -Wall -Wextra -Wno-missing-field-initializers -Wno-trigraphs -fdiagnostics-show-option -Wlogical-op -Wno-variadic-macros -frtti -fno-exceptions -Wno-long-long -fshort-wchar -fno-strict-aliasing -fvisibility=hidden -DVBOX_HAVE_VISIBILITY_HIDDEN -DRT_USE_VISIBILITY_DEFAULT -fvisibility-inlines-hidden -Wno-multistatement-macros -Wno-ignored-qualifiers -std=c++11 -fPIC -Wno-switch -pthread -m64 -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/cloud -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/converter -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/extensions -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/extensions/graphics -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/extradata -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/globals -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/hostnetwork -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/logviewer -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/medium -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/medium/viso -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/objects -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/platform -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/platform/darwin -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/platform/win -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/platform/x11 -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime/seamless -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/runtime/information -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/guestctrl -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/settings -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/settings/global -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/settings/machine -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/softkeyboard -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/snapshots -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/widgets -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/widgets/graphics -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/newcloudvm -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvd -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevm -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/importappliance -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/firstrun -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/manager -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/manager/chooser -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/manager/details -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/manager/tools -I/site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/net -I/site/ws/vb2/trunk/out/linux.amd64/debug/obj/UICommon/include -I/site/ws/vb2/trunk/include/VBox/Graphics -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/xpcom -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/string -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/xpcom -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/nsprpub -I/site/ws/vb2/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/ipcd -I/usr/include/qt5/QtX11Extras -I/usr/include/qt5/QtCore -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtPrintSupport -I/usr/include/qt5/QtOpenGL -I/usr/include/qt5 -I/site/ws/vb2/trunk/out/linux.amd64/debug/obj/VirtualBox/qtmoc -I/site/ws/vb2/trunk/out/linux.amd64/debug/obj/VirtualBox/qtuic -I/site/ws/vb2/trunk/include -I/site/ws/vb2/trunk/out/linux.amd64/debug -DVBOX -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_REM -DDEBUG -DDEBUG_fbatschu -DDEBUG_USERNAME=fbatschu -DRT_OS_LINUX -D_FILE_OFFSET_BITS=64 -DRT_ARCH_AMD64 -D__AMD64__ -DVBOX_WITH_DEBUGGER -DRT_LOCK_STRICT -DRT_LOCK_STRICT_ORDER -DIN_RING3 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DHAVE_CONFIG_H -DHC_ARCH_BITS=64 -DGC_ARCH_BITS=64 -DVBOX_WITH_XPCOM -DVBOX_WITH_XPCOM_NAMESPACE_CLEANUP -DPIC -DVBOX_WITH_UPDATE_REQUEST -DVBOX_GUI_WITH_NEW_MEDIA_EVENTS -DVBOX_WITH_AUDIO_OSS -DVBOX_WITH_AUDIO_ALSA -DVBOX_WITH_AUDIO_PULSE -DVBOX_WITH_E1000 -DVBOX_WITH_NETFLT -DVBOX_WITH_VDE -DVBOX_WITH_UDPTUNNEL -DVBOX_WITH_EXTPACK -DVBOX_WITH_EHCI -DVBOX_WITH_DRAG_AND_DROP -DVBOX_WITH_DRAG_AND_DROP_GH -DVBOX_WITH_CRHGSMI -DVBOX_WITH_VIRTIO -DVBOX_WITH_WDDM -DVBOX_WITH_CROGL -DVBOX_WITH_DEBUGGER_GUI -DVBOX_WITH_DEBUGGER_GUI_MENU -DVBOX_WITH_VIDEOHWACCEL -DVBOX_GUI_USE_QGL -DVBOX_GUI_WITH_NETWORK_MANAGER -DVBOX_GUI_WITH_EXTRADATA_MANAGER_UI -DVBOX_WITH_LESS_VIRTUALBOX_INCLUDING -DQT_X11EXTRAS_LIB -DQT_CORE_LIB -DQT_GUI_LIB -DQT_WIDGETS_LIB -DQT_PRINTSUPPORT_LIB -DQT_OPENGL_LIB -DVBOX_CHECK_STATE -D_REENTRANT -DVBOX_WS_X11 -DVBOX_WITH_MASKED_SEAMLESS -DVBOX_WITH_TRANSLUCENT_SEAMLESS -Wp,-MD,/site/ws/vb2/trunk/out/linux.amd64/debug/obj/VirtualBox/src/wizards/importappliance/UIWizardImportApp.o.dep -Wp,-MT,/site/ws/vb2/trunk/out/linux.amd64/debug/obj/VirtualBox/src/wizards/importappliance/UIWizardImportApp.o -Wp,-MP -o /site/ws/vb2/trunk/out/linux.amd64/debug/obj/VirtualBox/src/wizards/importappliance/UIWizardImportApp.o /site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIWizardImportApp.cpp kBuild: Compiling VirtualBox - /site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIWizardImportApp.cpp /site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIWizardImportApp.cpp:21:10: fatal error: QPrintDialog: No such file or directory 21 | #include <QPrintDialog> | ^~~~~~~~~~~~~~ compilation terminated. kmk: *** [/site/ws/vb2/trunk/kBuild/footer-pass2-compiling-targets.kmk:277: /site/ws/vb2/trunk/out/linux.amd64/debug/obj/VirtualBox/src/wizards/importappliance/UIWizardImportApp.o] Error 1 kmk: *** Waiting for unfinished jobs.... kBuild: Compiling VirtualBox - /site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageExpert.cpp /site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageExpert.cpp: In constructor ‘UIWizardExportAppPageExpert::UIWizardExportAppPageExpert(const QStringList&, bool)’: /site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageExpert.cpp:358:68: warning: ‘int QFontMetrics::width(QChar) const’ is deprecated: Use QFontMetrics::horizontalAdvance [-Wdeprecated-declarations] 358 | const int iFontWidth = fm.width('x'); | ^ In file included from /usr/include/qt5/QtWidgets/qwidget.h:50, from /usr/include/qt5/QtWidgets/qabstractbutton.h:46, from /usr/include/qt5/QtWidgets/qcheckbox.h:44, from /usr/include/qt5/QtWidgets/QCheckBox:1, from /site/ws/vb2/trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance/UIWizardExportAppPageExpert.cpp:19: /usr/include/qt5/QtGui/qfontmetrics.h:112:9: note: declared here 112 | int width(QChar) const; | ^~~~~ kmk: *** Exiting with status 2 VBox/Trunk fbatschu@hpbox trunk $ src/VBox/Frontends/VirtualBox/src/wizards/importappliance/UIWizardImportApp.cpp 21 #include <QPrintDialog> 22 #include <QPrinter> fbatschu@hpbox:/usr/include> find . -name "QPrint*" -ls fbatschu@hpbox:/usr/include> https://doc.qt.io/qt-5/qprintdialog.html QPrintDialog Class The QPrintDialog class provides a dialog for specifying the printer's configuration. More... Header: #include <QPrintDialog> qmake: QT += printsupport Inherits: QAbstractPrintDialog fbatschu@hpbox:/usr/include> zypper search libQt5Print Loading repository data... Reading installed packages... S | Name | Summary | Type ---+------------------------------------------+-------------------------------------------------------------------+-------- | libQt5PrintSupport-devel | Development files for the Qt5 print support library | package | libQt5PrintSupport-devel-32bit | Development files for the Qt5 print support library | package | libQt5PrintSupport-private-headers-devel | Non-ABI stable experimental API for the Qt5 print support library | package i+ | libQt5PrintSupport5 | Qt 5 Print Support Library | package | libQt5PrintSupport5-32bit | Qt 5 Print Support Library | package sudo zypper install libQt5PrintSupport-devel libQt5PrintSupport-devel-32bit libQt5PrintSupport-private-headers-devel libQt5PrintSupport5-32bit ### and so we get them: fbatschu@hpbox:/usr/include> find . -name "QPrint*" -ls 3117496 4 -rw-r--r-- 1 root root 26 Jun 13 06:18 ./qt5/QtPrintSupport/QPrintDialog 3117497 4 -rw-r--r-- 1 root root 26 Jun 13 06:18 ./qt5/QtPrintSupport/QPrintEngine 3117498 4 -rw-r--r-- 1 root root 33 Jun 13 06:18 ./qt5/QtPrintSupport/QPrintPreviewDialog 3117499 4 -rw-r--r-- 1 root root 33 Jun 13 06:18 ./qt5/QtPrintSupport/QPrintPreviewWidget 3117500 4 -rw-r--r-- 1 root root 22 Jun 13 06:18 ./qt5/QtPrintSupport/QPrinter 3117501 4 -rw-r--r-- 1 root root 26 Jun 13 06:18 ./qt5/QtPrintSupport/QPrinterInfo ### and finally the build is successful!
comment:5 by , 6 years ago
### So finally the following config changes and fix will make ### Trunk compile on OpenSuse Tumbleweed successful without the webservices ### thoigh which where running into the GCC 9.x internal compiler error. 1) Virtualbox fix: ------------------ VBox/Trunk fbatschu@hpbox trunk $ svn diff Index: src/VBox/Frontends/VirtualBox/src/globals/COMWrappers.xsl =================================================================== --- src/VBox/Frontends/VirtualBox/src/globals/COMWrappers.xsl (revision 132595) +++ src/VBox/Frontends/VirtualBox/src/globals/COMWrappers.xsl (working copy) @@ -7,7 +7,7 @@ * in platform-independent script-like manner. */ - Copyright (C) 2006-2016 Oracle Corporation + Copyright (C) 2006-2019 Oracle Corporation This file is part of VirtualBox Open Source Edition (OSE), as available from http://www.virtualbox.org. This file is free software; @@ -300,7 +300,9 @@ <xsl:text>_h__

</xsl:text> <xsl:if test="@name='IVirtualBox' or @name='IMachine'"> <xsl:text>/* Qt includes: */
</xsl:text> - <xsl:text>#include <QRect>

</xsl:text> + <xsl:text>#include <QRect>
</xsl:text> + <xsl:text>#include <QList>
</xsl:text> + <xsl:text>#include <QStringList>

</xsl:text> </xsl:if> <xsl:text>/* GUI includes: */
</xsl:text> <xsl:text>#include "COMDefs.h"
</xsl:text> 2) config changes : ------------------- 2.1) add woraround for the compiler problem workaround_2) do not build the webservices entirely add VBOX_WITH_WEBSERVICES := to the LocalConfig.kmk file. 2.2) add the following symlinks for libraries: hpbox:/usr/lib64 # ln -s /usr/lib64/libQt5X11Extras.so.5.13.0 /usr/lib64/libQt5X11Extras.so hpbox:/usr/lib64 # ls -la /usr/lib64/libQt5X11* lrwxrwxrwx 1 root root 36 Jul 31 16:20 /usr/lib64/libQt5X11Extras.so -> /usr/lib64/libQt5X11Extras.so.5.13.0 lrwxrwxrwx 1 root root 25 Jul 10 01:38 /usr/lib64/libQt5X11Extras.so.5 -> libQt5X11Extras.so.5.13.0 lrwxrwxrwx 1 root root 25 Jul 10 01:38 /usr/lib64/libQt5X11Extras.so.5.13 -> libQt5X11Extras.so.5.13.0 -rwxr-xr-x 1 root root 22840 Jul 10 01:38 /usr/lib64/libQt5X11Extras.so.5.13.0 hpbox:/usr/lib64 # ln -s /usr/lib64/libQt5PrintSupport.so.5.13.0 /usr/lib64/libQt5PrintSupport.so hpbox:/usr/lib64 # ls -la /usr/lib64/libQt5PrintSupport* lrwxrwxrwx 1 root root 39 Jul 31 16:31 /usr/lib64/libQt5PrintSupport.so -> /usr/lib64/libQt5PrintSupport.so.5.13.0 lrwxrwxrwx 1 root root 28 Jul 13 22:07 /usr/lib64/libQt5PrintSupport.so.5 -> libQt5PrintSupport.so.5.13.0 lrwxrwxrwx 1 root root 28 Jul 13 22:07 /usr/lib64/libQt5PrintSupport.so.5.13 -> libQt5PrintSupport.so.5.13.0 -rwxr-xr-x 1 root root 486480 Jul 13 22:09 /usr/lib64/libQt5PrintSupport.so.5.13.0 2.3) add the following packages: sudo zypper install acpica kbuild makeself python3-pylint python2-pylint mkisofs sudo zypper install chrpath doxygen libxslt-tools libxslt1 libxslt-devel xalan-j2-xsltc sudo zypper install subversion subversion-doc subversion-tools unzip python-devel sudo zypper install wine winetricks libqt5-qttools libqt5-qttools-devel libqt5-qttools-doc mscgen sudo zypper install texlive texlive-latex texlive-collection-fontsextra texlive-collection-latexextra sudo zypper install libIDL-2-0 libidl-devel device-mapper device-mapper-devel sudo zypper install libxml2-2 libxml2-devel libxml2-doc libxml2-tools sudo zypper install libSDL-1_2-0 libSDL-devel libSDL2-2_0-0 libSDL2-devel libSDL2_ttf-2_0-0 libSDL2_ttf-devel libSDL_ttf-2_0-0 libSDL_ttf-devel sudo zypper install libssl47 libpulse0 libpulse-devel libasound2 libXrandr2 libXrandr-devel sudo zypper install libXinerama1 libXinerama-devel libcap2 libcap1 libcap-devel sudo zypper install libXmu6 libXmu-devel libXcursor1 libXcursor-devel libcurl4 libopenssl-devel sudo zypper install libdevmapper1_03 libvpx6 libvpx-devel libQt5OpenGL5 libQt5OpenGL-devel libQt5PlatformHeaders-devel sudo zypper install gcc gcc-c++ make sudo zypper install libXt6 libXt-devel libX11-6 libX11-data libX11-devel libXext6 libXext-devel sudo zypper install pam-devel pam-doc alsa alsa-devel alsa-utils linux-glibc-devel kernel-devel sudo zypper install opus-tools install libopus0 libopus-devel libcurl-devel sudo zypper install libQt5X11Extras5 libqt5-qtx11extras-devel sudo zypper install libQt5PrintSupport-devel libQt5PrintSupport-private-headers-devel ### 32bit: sudo zypper install libQt5PrintSupport5-32bit libQt5PrintSupport-devel-32bit sudo zypper install libQt5X11Extras5-32bit libqt5-qtx11extras-devel-32bit libopus0-32bit sudo zypper install libasound2-32bit libssl47-32bit libcurl4-32bit libdevmapper1_03-32bit sudo zypper install libcurl-devel-32bit libdevmapper-event1_03-32bit libQt5X11Extras5-32bit sudo zypper install libXext6-32bit libX11-6-32bit libXext-devel-32bit libX11-devel-32bit sudo zypper install libXt6-32bit libXt-devel-32bit gcc-32bit gcc-c++-32bit sudo zypper install device-mapper-devel-32bit 3) thats in detail what I have build with: ------------------------------------------ VBox/Trunk fbatschu@hpbox trunk $ ./configure --disable-hardening Checking for environment: Determined build machine: linux.amd64, target machine: linux.amd64, OK. Checking for kBuild: found, OK. Checking for gcc: found version 9.1.1, OK. Checking for Open Watcom: found version 1.9, OK. Checking for iasl: found version 20100528, OK. Checking for xslt: found, OK. Checking for pthread: found, OK. Checking for libxml2: found version 2.9.9, OK. Checking for libIDL: found version 0.8.14, OK. Checking for libcurl: found version 7.65.3, OK. Checking for libvpx: found version 1.8.1, OK. Checking for libopus: found, OK. Checking for zlib: found version 1.2.11, OK. Checking for libpng: found version 1.6.37, OK. Checking for pam: pam0.x not found Checking for linux_pam: found version 1.0, OK. Checking for SDL: found version 1.2.15, OK. Checking for SDL_ttf: found version 2.0.11, OK. Checking for X libraries: found, OK. Checking for Xcursor: found, OK. Checking for Xinerama: found, OK. Checking for Xrandr: found, OK. Checking for Xmu: found, OK. Checking for Mesa / GLU: found version 1.4, OK. Checking for Qt5: found version 5.13.0, OK. Checking for Qt5 devtools: found version moc 5.13.0, OK. Checking for Python support: found version 2.7.16, OK. Checking for Java support: OK. Checking for PulseAudio: found version 12.2.0 API version 12, OK. Checking for Linux kernel sources: found version 5.2.3, OK. Checking for ALSA: found version 1.1.9, OK. Checking for libdevmapper: found version 1.03.01 (2018-07-19), OK. Checking for libcap library: found, OK. Checking for compiler.h: compiler.h not found, OK. Checking for 32-bit support: OK. fbatschu@hpbox:~> cat LocalConfig.kmk VBOX_WITH_TESTCASES := VBOX_WITH_VALIDATIONKIT := VBOX_WITHOUT_HARDENING := 1 VBOX_WITHOUT_DOCS := 1 VBOX_WITH_WEBSERVICES := VBOX_WITH_LINUX_COMPILER_H := ------------------------------------------------------------------
comment:6 by , 6 years ago
I can also successfully compile the fix and build the entire thing with it on:
Linux 4.15.0-55-generic #60-Ubuntu SMP Tue Jul 2 18:22:20 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
gcc version 7.4.0 (Ubuntu 7.4.0-1ubuntu1~18.04.1)
$ cat /etc/os-release NAME="Linux Mint" VERSION="19.1 (Tessa)" ID=linuxmint ID_LIKE=ubuntu PRETTY_NAME="Linux Mint 19.1" VERSION_ID="19.1" HOME_URL="https://www.linuxmint.com/" SUPPORT_URL="https://forums.ubuntu.com/" BUG_REPORT_URL="http://linuxmint-troubleshooting-guide.readthedocs.io/en/latest/" PRIVACY_POLICY_URL="https://www.linuxmint.com/" VERSION_CODENAME=tessa UBUNTU_CODENAME=bionic
comment:7 by , 6 years ago
The fix also succesfully builds using the VBOX internal QT5 version in trunk/tools (add VBOX_WITH_TOOLS_QT_LINUX := 1 to LocalConfig.kmk) which is currently at Version 5.6.1
comment:9 by , 6 years ago
Owner: | set to |
---|---|
Status: | new → accepted |
comment:10 by , 6 years ago
Resolution: | → fixed |
---|---|
Status: | accepted → closed |
There are 2 possible workarounds to overcome the compiler error that appears when compiling the VBOX internally delivered version of libsoap, which is 2.8.72, those are:
workaround_1) fall back to version 8 of g++
hpbox:/usr/bin # ls -la g++* lrwxrwxrwx 1 root root 5 Jul 9 10:16 g++ -> g++-9 -rwxr-xr-x 1 root root 1087976 Jul 9 15:40 g++-8 -rwxr-xr-x 1 root root 760000 Jul 24 23:23 g++-9
hpbox:/usr/bin # rm g++ hpbox:/usr/bin # ln -s g++-8 g++ hpbox:/usr/bin # ls -la g++* lrwxrwxrwx 1 root root 5 Aug 2 11:51 g++ -> g++-8 -rwxr-xr-x 1 root root 1087976 Jul 9 15:40 g++-8 -rwxr-xr-x 1 root root 760000 Jul 24 23:23 g++-9
gcc version 8.3.1 20190531 [gcc-8-branch revision 271802] (SUSE Linux)
workaround_2) do not build the webservices entirely
add VBOX_WITH_WEBSERVICES := to the LocalConfig.kmk file:
VBox/Trunk fbatschu@hpbox trunk $ cat LocalConfig.kmk VBOX_WITH_TESTCASES := VBOX_WITH_VALIDATIONKIT := VBOX_WITHOUT_HARDENING := 1 VBOX_WITHOUT_DOCS := 1 VBOX_WITH_WEBSERVICES :=
With both workarounds you can successfully compile the vbox internal gsoap stuff in common/gsoap/v2.8.72.
NB: OpenSUse itself delivers a higher version with the OS so they must have compiled it likely with gcc/g++ version 9.x I suppose.
VBox/Trunk fbatschu@hpbox trunk $ zypper search gsoap Loading repository data... Reading installed packages...
S | Name | Summary | Type --+-----------------+-------------------------------------------------+--------
VBox/Trunk fbatschu@hpbox trunk $ apt info libgsoap-2_8_87 Loading repository data... Reading installed packages...
Information for package libgsoap-2_8_87:
Repository : openSUSE-Tumbleweed-Oss Name : libgsoap-2_8_87 Version : 2.8.87-1.1 Arch : x86_64 Vendor : openSUSE Installed Size : 1.6 MiB Installed : No Status : not installed Source package : gsoap-2.8.87-1.1.src Summary : Runtime libraries for gSOAP Description :
SO while these 2 workarounds get us over building gsoap we fail compilation later on when compiling:
trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.cpp
with what appears to be a realVirtualbox problem, redardless if I use gcc/g++ version 8.x or 9.x, the failure is the same for both compilers, here the error output for the 9.x compiler version:
gcc version 9.1.1 20190723 [gcc-9-branch revision 273734] (SUSE Linux)
kBuild: Compiling UICommon - /site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMedium.cpp The failing command: @g++ -c -g -fPIC -g -pipe -Wall -Wextra -Wno-missing-field-initializers -Wno-trigraphs -fdiagnostics-show-option -Wlogical-op -Wno-variadic-macros -frtti -fno-exceptions -Wno-long-long -fshort-wchar -fno-strict-aliasing -fvisibility=hidden -DVBOX_HAVE_VISIBILITY_HIDDEN -DRT_USE_VISIBILITY_DEFAULT -fvisibility-inlines-hidden -Wno-multistatement-macros -Wno-ignored-qualifiers -std=c++11 -fPIC -pthread -m64 -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/cloud -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/converter -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/extensions -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/extensions/graphics -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/extradata -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/globals -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/hostnetwork -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/logviewer -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium/viso -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/objects -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/platform -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/platform/darwin -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/platform/win -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/platform/x11 -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/runtime -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/runtime/fullscreen -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/runtime/normal -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/runtime/scale -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/runtime/seamless -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/runtime/information -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/guestctrl -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/settings -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/settings/global -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/settings/machine -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/softkeyboard -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/snapshots -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/widgets -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/widgets/graphics -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/wizards -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/wizards/newcloudvm -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvm -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/wizards/newvd -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevm -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/wizards/clonevd -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/wizards/exportappliance -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/wizards/importappliance -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/wizards/firstrun -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/manager -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/manager/chooser -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/manager/details -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/manager/tools -I/site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/net -I/site/ws/vbox/trunk/out/linux.amd64/debug/obj/UICommon/include -I/site/ws/vbox/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include -I/site/ws/vbox/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/xpcom -I/site/ws/vbox/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/string -I/site/ws/vbox/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/xpcom -I/site/ws/vbox/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/nsprpub -I/site/ws/vbox/trunk/out/linux.amd64/debug/bin/sdk/bindings/xpcom/include/ipcd -I/usr/include/qt5/QtX11Extras -I/usr/include/qt5/QtCore -I/usr/include/qt5/QtGui -I/usr/include/qt5/QtWidgets -I/usr/include/qt5/QtOpenGL -I/usr/include/qt5 -I/site/ws/vbox/trunk/out/linux.amd64/debug/obj/UICommon/qtmoc -I/site/ws/vbox/trunk/out/linux.amd64/debug/obj/UICommon/qtuic -I/site/ws/vbox/trunk/include -I/site/ws/vbox/trunk/out/linux.amd64/debug -DVBOX -DVBOX_WITH_64_BITS_GUESTS -DVBOX_WITH_REM -DDEBUG -DDEBUG_fbatschu -DDEBUG_USERNAME=fbatschu -DRT_OS_LINUX -D_FILE_OFFSET_BITS=64 -DRT_ARCH_AMD64 -DAMD64 -DVBOX_WITH_DEBUGGER -DRT_LOCK_STRICT -DRT_LOCK_STRICT_ORDER -DPIC -DIN_RING3 -DQT_NO_DEBUG -DQT_THREAD_SUPPORT -DQT_SHARED -DHAVE_CONFIG_H -DHC_ARCH_BITS=64 -DGC_ARCH_BITS=64 -DVBOX_WITH_XPCOM -DVBOX_WITH_XPCOM_NAMESPACE_CLEANUP -DPIC -DVBOX_GUI_LIBRARY -DVBOX_WITH_UPDATE_REQUEST -DVBOX_GUI_WITH_NEW_MEDIA_EVENTS -DVBOX_WITH_AUDIO_OSS -DVBOX_WITH_AUDIO_ALSA -DVBOX_WITH_AUDIO_PULSE -DVBOX_WITH_E1000 -DVBOX_WITH_NETFLT -DVBOX_WITH_VDE -DVBOX_WITH_EXTPACK -DVBOX_WITH_DRAG_AND_DROP -DVBOX_WITH_CRHGSMI -DVBOX_WITH_VIRTIO -DVBOX_WITH_CROGL -DVBOX_WITH_DEBUGGER_GUI -DVBOX_WITH_DEBUGGER_GUI_MENU -DVBOX_WITH_VIDEOHWACCEL -DVBOX_GUI_USE_QGL -DVBOX_GUI_WITH_NETWORK_MANAGER -DVBOX_GUI_WITH_EXTRADATA_MANAGER_UI -DVBOX_WITH_LESS_VIRTUALBOX_INCLUDING -DQT_X11EXTRAS_LIB -DQT_CORE_LIB -DQT_GUI_LIB -DQT_WIDGETS_LIB -DQT_OPENGL_LIB -DVBOX_CHECK_STATE -D_REENTRANT -DVBOX_WS_X11 -Wp,-MD,/site/ws/vbox/trunk/out/linux.amd64/debug/obj/UICommon/src/medium/UIMediumDefs.o.dep -Wp,-MT,/site/ws/vbox/trunk/out/linux.amd64/debug/obj/UICommon/src/medium/UIMediumDefs.o -Wp,-MP -o /site/ws/vbox/trunk/out/linux.amd64/debug/obj/UICommon/src/medium/UIMediumDefs.o /site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.cpp kBuild: Compiling UICommon - /site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.cpp In file included from /site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.h:32,
/site/ws/vbox/trunk/out/linux.amd64/debug/obj/UICommon/include/CVirtualBox.h:336:93: error: invalid use of incomplete type ‘class QStringList’
In file included from /usr/include/qt5/QtCore/QString:1,
/usr/include/qt5/QtCore/qstring.h:86:7: note: forward declaration of ‘class QStringList’
In file included from /site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumDefs.h:32,
/site/ws/vbox/trunk/out/linux.amd64/debug/obj/UICommon/include/CVirtualBox.h:338:87: error: invalid use of incomplete type ‘class QList<int>’
In file included from /usr/include/qt5/QtCore/qglobal.h:1218,
/usr/include/qt5/QtCore/qtypeinfo.h:212:29: note: declaration of ‘class QList<int>’
/usr/include/qt5/QtCore/qtypeinfo.h:194:29: note: in definition of macro ‘Q_DECLARE_MOVABLE_CONTAINER’
kmk: * /site/ws/vbox/trunk/out/linux.amd64/debug/obj/UICommon/src/medium/UIMediumDefs.o Error 1 kmk: * Waiting for unfinished jobs.... kBuild: Compiling UICommon - /site/ws/vbox/trunk/src/VBox/Frontends/VirtualBox/src/medium/UIMediumEnumerator.cpp kmk: * Exiting with status 2 VBox/Trunk fbatschu@hpbox trunk $