Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 213052 - x11-proto/inputproto and qt don't get along
Summary: x11-proto/inputproto and qt don't get along
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Gentoo X packagers
URL: http://cgit.freedesktop.org/xorg/prot...
Whiteboard:
Keywords:
: 210250 213056 (view as bug list)
Depends on:
Blocks:
 
Reported: 2008-03-11 17:52 UTC by Mark Loeser (RETIRED)
Modified: 2008-07-27 20:25 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Loeser (RETIRED) gentoo-dev 2008-03-11 17:52:05 UTC
They both define INT32 and do so in an incompatible way.  Upstream has a fix for this already: http://cgit.freedesktop.org/xorg/proto/inputproto/patch/?id=b5cbe2d93f6c0129b8f29da97778f6d1b15c38f9


In file included from /usr/include/X11/extensions/XI.h:55,
                 from /usr/include/X11/extensions/XInput.h:56,
                 from kernel/qt_x11_p.h:87,
                 from kernel/qtaddons_x11.cpp:25:
/usr/include/X11/Xmd.h:137: error: conflicting declaration 'typedef long int INT32'
../include/qglobal.h:706: error: 'INT32' has a previous declaration as 'typedef int INT32'
make[1]: *** [.obj/release-shared-mt/qtaddons_x11.o] Error 1
make[1]: *** Waiting for unfinished jobs....
In file included from /usr/include/X11/extensions/XI.h:55,
                 from /usr/include/X11/extensions/XInput.h:56,
                 from kernel/qt_x11_p.h:87,
                 from kernel/qclipboard_x11.cpp:73:
/usr/include/X11/Xmd.h:137: error: conflicting declaration 'typedef long int INT32'
../include/qglobal.h:706: error: 'INT32' has a previous declaration as 'typedef int INT32'
make[1]: *** [.obj/release-shared-mt/qclipboard_x11.o] Error 1
Comment 1 Donnie Berkholz (RETIRED) gentoo-dev 2008-03-12 03:51:09 UTC
Fixed, thanks!
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2008-03-12 14:44:26 UTC
*** Bug 213056 has been marked as a duplicate of this bug. ***
Comment 3 Peter Alfredsen (RETIRED) gentoo-dev 2008-06-25 18:28:36 UTC
*** Bug 210250 has been marked as a duplicate of this bug. ***
Comment 4 Shunichi Fuji 2008-07-27 20:25:53 UTC
Hi, I have some x-related *-9999 ebuilds (xlib,proto,,,) in system now and still get errors....
In file included from /usr/include/X11/extensions/XI.h:51,
                 from /usr/include/X11/extensions/XInput.h:56,
                 from kernel/qt_x11_p.h:90,
                 from kernel/qtaddons_x11.cpp:25:
/usr/include/X11/Xmd.h:137: error: conflicting declaration 'typedef long int INT32'
../include/qglobal.h:709: error: 'INT32' has a previous declaration as 'typedef int INT32'
make[1]: *** [.obj/release-shared-mt/qtaddons_x11.o] Error 1


trying inputproto-9999 with a patch like in portage-tree (drop Xmd.h) also failed.

In file included from /usr/include/X11/extensions/XInput.h:57,
                 from kernel/qt_x11_p.h:90,
                 from kernel/qtaddons_x11.cpp:25:
/usr/include/X11/extensions/Xge.h:43: error: 'CARD8' does not name a type
/usr/include/X11/extensions/Xge.h:44: error: 'CARD8' does not name a type
/usr/include/X11/extensions/Xge.h:45: error: 'CARD16' does not name a type
/usr/include/X11/extensions/Xge.h:46: error: 'CARD32' does not name a type
make[1]: *** [.obj/release-shared-mt/qtaddons_x11.o] Error 1

XInput.h includes XI.h and Xge.h, and Xge.h uses CARD* types.

In Bug 213056, he suggested 'adding -DQT_CLEAN_NAMESPACE'.
Currently build is passed here by this method.

--- /usr/portage/x11-libs/qt/qt-3.3.8b.ebuild   2008-07-27 06:01:44.000000000 +0900
+++ qt-3.3.8b.ebuild    2008-07-28 05:00:34.000000000 +0900
@@ -203,7 +203,7 @@
                -qt-imgfmt-{jpeg,mng,png} -tablet -system-libmng \
                -system-libpng -xft -platform ${PLATFORM} -xplatform \
                ${PLATFORM} -xrender -prefix ${QTBASE} -libdir ${QTBASE}/${libdir} \
-               -fast -no-sql-odbc ${myconf} -dlopen-opengl || die
+               -fast -no-sql-odbc ${myconf} -dlopen-opengl -DQT_CLEAN_NAMESPACE || die
 
        emake src-qmake src-moc sub-src || die