Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 304499

Summary: compiz-0.8.4-r2 fails to compile with error: cannot allocate an object of abstract type ‘KWD::Window’
Product: Gentoo Linux Reporter: gentoo <gentoo>
Component: Current packagesAssignee: Gentoo Linux bug wranglers <bug-wranglers>
Status: RESOLVED DUPLICATE    
Severity: normal    
Priority: High    
Version: unspecified   
Hardware: AMD64   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Attachments: Contains everything requested at the end of the crash

Description gentoo@danielquinn.org 2010-02-11 06:03:20 UTC
Everything is in the attachment

Reproducible: Always

Steps to Reproduce:
1. emerge -auDN --keep-going world

Actual Results:  
Blows up with:

...
i686-pc-linux-gnu-g++ -DHAVE_CONFIG_H -I. -I../.. -I../../include -I../../include -DQT_SHARED -I/usr/include/dbus-1.0 -I/usr/lib/dbus-1.0/include -I/usr/include/qt4 -I/usr/include/qt4/QtCore -I/usr/include/qt4/QtGui -I/usr/include/qt4/QtDBus -I/usr/include/qt4/QtXml   -I/usr/include/    -O2 -march=k8 -pipe -ggdb -Wall -D_FORTIFY_SOURCE=2 -c -o decorator.o decorator.cpp                                                                   
decorator.cpp: In member function ‘bool KWD::Decorator::enableDecorations(Time)’:                                                                 
decorator.cpp:212: error: cannot allocate an object of abstract type ‘KWD::Window’                                                                
window.h:53: note:   because the following virtual functions are pure within ‘KWD::Window’:                                                       
/usr/include/kdecorationbridge.h:97: note:      virtual QRect KDecorationBridgeUnstable::transparentRect() const                                  
/usr/include/kdecorationbridge.h:100: note:     virtual bool KDecorationBridgeUnstable::isClientGroupActive()                                     
/usr/include/kdecorationbridge.h:101: note:     virtual QList<ClientGroupItem> KDecorationBridgeUnstable::clientGroupItems() const                
/usr/include/kdecorationbridge.h:102: note:     virtual long int KDecorationBridgeUnstable::itemId(int)                                           
/usr/include/kdecorationbridge.h:103: note:     virtual int KDecorationBridgeUnstable::visibleClientGroupItem()                                   
/usr/include/kdecorationbridge.h:104: note:     virtual void KDecorationBridgeUnstable::setVisibleClientGroupItem(int)
/usr/include/kdecorationbridge.h:105: note:     virtual void KDecorationBridgeUnstable::moveItemInClientGroup(int, int)
/usr/include/kdecorationbridge.h:106: note:     virtual void KDecorationBridgeUnstable::moveItemToClientGroup(long int, int)
/usr/include/kdecorationbridge.h:107: note:     virtual void KDecorationBridgeUnstable::removeFromClientGroup(int, const QRect&)
/usr/include/kdecorationbridge.h:108: note:     virtual void KDecorationBridgeUnstable::closeClientGroupItem(int)
/usr/include/kdecorationbridge.h:109: note:     virtual void KDecorationBridgeUnstable::closeAllInClientGroup()
/usr/include/kdecorationbridge.h:110: note:     virtual void KDecorationBridgeUnstable::displayClientMenu(int, const QPoint&)
/usr/include/kdecorationbridge.h:111: note:     virtual KDecorationDefines::WindowOperation KDecorationBridgeUnstable::buttonToWindowOperation(Qt::MouseButtons)
decorator.cpp:214: error: cannot allocate an object of abstract type ‘KWD::Window’
window.h:53: note:   since type ‘KWD::Window’ has pure virtual functions
decorator.cpp: In member function ‘void KWD::Decorator::handleWindowAdded(WId)’:
decorator.cpp:678: error: cannot allocate an object of abstract type ‘KWD::Window’
window.h:53: note:   since type ‘KWD::Window’ has pure virtual functions
make[3]: *** [decorator.o] Error 1
make[3]: Leaving directory `/var/tmp/portage/x11-wm/compiz-0.8.4-r2/work/compiz-0.8.4/kde/window-decorator-kde4'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/var/tmp/portage/x11-wm/compiz-0.8.4-r2/work/compiz-0.8.4/kde'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/var/tmp/portage/x11-wm/compiz-0.8.4-r2/work/compiz-0.8.4'
make: *** [all] Error 2
Comment 1 gentoo@danielquinn.org 2010-02-11 06:05:52 UTC
Created attachment 219193 [details]
Contains everything requested at the end of the crash

Output of 'emerge --info =x11-wm/compiz-0.8.4-r2',
The complete build log and the output of 'emerge -pqv =x11-wm/compiz-0.8.4-r2'.
The ebuild environment
Comment 2 Viktor S 2010-02-11 13:59:21 UTC
What's your version of qt and what qt-packages do you have installed? (To find this out: eix -Ic qt-*)
Comment 3 Rafał Mużyło 2010-02-11 14:54:21 UTC
Frankly, I suspect '--keep-going' may be the cause,
more exactly, a revdep-rebuild may be in order.
Comment 4 Kobboi 2010-02-14 20:53:46 UTC
Same problem here. Most recent qt-* stuff, being 4.6.1.
Comment 5 Ambroz Bizjak 2010-02-18 12:26:00 UTC
The error is because compiz does not support KDE 4.4. This upstream commit adds KDE 4.4 support:
http://gitweb.compiz.org/?p=compiz/core;a=commit;h=04c6a44893a00088c63acd3ba327022f8aa551cc
Works here (compiles and kde4-window-decorator runs).
Comment 6 Hanno Böck gentoo-dev 2010-02-20 19:06:10 UTC

*** This bug has been marked as a duplicate of bug 303159 ***