Bug 375881 - kwin-5.9.0: build failure in platform_x11
Summary: kwin-5.9.0: build failure in platform_x11
Status: RESOLVED NOT A BUG
Alias: None
Product: kwin
Classification: Plasma
Component: platform-x11-standalone (show other bugs)
Version: 5.9.0
Platform: Gentoo Packages Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2017-02-02 07:01 UTC by Manuel Lauss
Modified: 2017-02-02 18:37 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
Build Log (51.14 KB, application/x-xz)
2017-02-02 07:01 UTC, Manuel Lauss
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Manuel Lauss 2017-02-02 07:01:58 UTC
Created attachment 103764 [details]
Build Log

I cannot build kwin-5.9.0 on Gentoo, it fails with this strange error:

[ 93%] Building CXX object plugins/platforms/x11/standalone/CMakeFiles/KWinX11Platform.dir/x11_platform.cpp.o
cd /tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0_build/plugins/platforms/x11/standalone && /usr/bin/x86_64-pc-linux-gnu-g++  -DKCOREADDONS_LIB -DKWinX11Platform_EXPORTS -DQT_CONCURRENT_LIB -DQT_CORE_LIB -DQT_DBUS_LIB -DQT_DISABLE_DEPRECATED_BEFORE=0 -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_NO_DEBUG -DQT_QML_LIB -DQT_QUICK_LIB -DQT_SCRIPT_LIB -DQT_USE_QSTRINGBUILDER -DQT_WIDGETS_LIB -DQT_X11EXTRAS_LIB -DQT_XML_LIB -D_GNU_SOURCE -D_LARGEFILE64_SOURCE -I/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0_build/plugins/platforms/x11/standalone -I/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/plugins/platforms/x11/standalone -I/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/tabbox -I/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/effects -I/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/libkwineffects -I/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0_build -I/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0_build/libkwineffects -I/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0_build/plugins/platforms/x11/common -I/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/plugins/platforms/x11/common -I/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0 -I/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0_build/effects -isystem /usr/include/qt5 -isystem /usr/include/qt5/QtDBus -isystem /usr/include/qt5/QtCore -isystem /usr/lib64/qt5/mkspecs/linux-g++ -isystem /usr/include/qt5/QtWidgets -isystem /usr/include/qt5/QtGui -isystem /usr/include/KF5/KConfigCore -isystem /usr/include/KF5 -isystem /usr/include/KF5/KCoreAddons -isystem /usr/include/KF5/KWindowSystem -isystem /usr/include/KF5/KWayland/Server -isystem /usr/include/qt5/QtConcurrent -isystem /usr/include/qt5/QtQuick -isystem /usr/include/qt5/QtQml -isystem /usr/include/qt5/QtNetwork -isystem /usr/include/qt5/QtScript -isystem /usr/include/qt5/QtX11Extras -isystem /usr/include/KF5/KConfigWidgets -isystem /usr/include/KF5/KCodecs -isystem /usr/include/KF5/KWidgetsAddons -isystem /usr/include/KF5/KConfigGui -isystem /usr/include/qt5/QtXml -isystem /usr/include/KF5/KAuth -isystem /usr/include/KF5/KGlobalAccel -isystem /usr/include/KF5/KService -isystem /usr/include/KF5/KI18n -isystem /usr/include/KF5/KNotifications -isystem /usr/include/KF5/KPackage -isystem /usr/include/KF5/Plasma -isystem /usr/include/KDecoration2 -isystem /usr/include/KScreenLocker -isystem /usr/include/KF5/KActivities -isystem /usr/include/KF5/KWayland/Client   -DQT_NO_DEBUG -DNDEBUG -O3 -fno-lifetime-dse -fno-delete-null-pointer-checks -march=haswell -mtune=haswell -pipe -std=c++0x -fno-exceptions -Wall -Wextra -Wcast-align -Wchar-subscripts -Wformat-security -Wno-long-long -Wpointer-arith -Wundef -Wnon-virtual-dtor -Woverloaded-virtual -Werror=return-type -fPIC -fvisibility=hidden -fvisibility-inlines-hidden   -fPIC -std=gnu++11 -o CMakeFiles/KWinX11Platform.dir/x11_platform.cpp.o -c /tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/plugins/platforms/x11/standalone/x11_platform.cpp
In file included from /tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/plugins/platforms/x11/standalone/x11_platform.cpp:20:0:
/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/plugins/platforms/x11/standalone/x11_platform.h:75:5: error: 'Display' does not name a type
     Display *m_x11Display;
     ^~~~~~~
/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/plugins/platforms/x11/standalone/x11_platform.cpp: In constructor 'KWin::X11StandalonePlatform::X11StandalonePlatform(QObject*)':
/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/plugins/platforms/x11/standalone/x11_platform.cpp:50:7: error: class 'KWin::X11StandalonePlatform' does not have any field named 'm_x11Display'
     , m_x11Display(QX11Info::display())
       ^~~~~~~~~~~~
/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/plugins/platforms/x11/standalone/x11_platform.cpp:54:53: error: 'm_x11Display' was not declared in this scope
         m_xinputIntegration = new XInputIntegration(m_x11Display, this);
                                                     ^~~~~~~~~~~~
/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/plugins/platforms/x11/standalone/x11_platform.cpp: In member function 'virtual KWin::OpenGLBackend* KWin::X11StandalonePlatform::createOpenGLBackend()':
/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/plugins/platforms/x11/standalone/x11_platform.cpp:89:35: error: 'm_x11Display' was not declared in this scope
             return new GlxBackend(m_x11Display);
                                   ^~~~~~~~~~~~
/tmp-ram/portage/kde-plasma/kwin-5.9.0/work/kwin-5.9.0/plugins/platforms/x11/standalone/x11_platform.cpp:96:34: error: 'm_x11Display' was not declared in this scope
         return new EglOnXBackend(m_x11Display);
                                  ^~~~~~~~~~~~


I'm attaching the complete build log.
Comment 1 Martin Flöser 2017-02-02 16:25:55 UTC
This is due to epoxy dependency missing an XLib dependency. x11_platform.h includes platform.h which includes <epoxy/egl.h>. This normally include x11.h at least we have an include for <fixx11h.h> directly afterwards.

We have had cases before that epoxy got compiled without X11 support. Given that this would result in severe runtime errors a compile failure is not bad.

Anyway: check your compile flags for epoxy.
Comment 2 Manuel Lauss 2017-02-02 16:34:44 UTC
thanks, fixed with a new build of libepoxy git.
Comment 3 Martin Flöser 2017-02-02 18:37:24 UTC
  > thanks, fixed with a new build of libepoxy git.

great! I'm happy that I could help and correctly deduce the broken 
package.