On Fri, Mar 23, 2007 at 08:51:57AM +0100, Peter Kümmel wrote:
> Andre Poenitz wrote:
> > On Fri, Mar 23, 2007 at 12:06:27AM +0100, Peter Kümmel wrote:
> >> Merging qt4 on linux does not work, because xlib.h defines some symbols
> > 
> > There is no xlib.h on my system.
> > 
> >> and gcc couldn't resolve symbols, which looks like a gcc bug.
> > 
> > I know you won't believe me, but gcc bugs are less rare than
> > you seem to believe.
> 
> I also think it's not really a bug but a it's
> very mysterious compiler error:
> #include <Qt>
> which defines the enum Qt::CursorShape
> but then gcc complains about using CursorShape
> viewFullSourceCB->setCursor(QCursor(static_cast<Qt::CursorShape>(0)));
> 
> Maybe Qt::CursorShape  could not be used as type? I also had this
> behavior when adding the enum for the windows-maximized flag:
> gcc doesn't like the enum as type only using int was the
> solution.

This must be a clash occurring with the X.h include file which defines
CursorShape as follows:

#define CursorShape             0       /* largest size that can be displayed */

Maybe this can be hacked using some preprocessor magic, too:

#define CursorShape XCursorShape
<X includes here>
#undef CursorShape

BTW, I think that Xlib.h must be present on Andre's system...

-- 
Enrico

Reply via email to