Qt World Summit: Register Today!

Mac build not working qt5 stable

  • OS: Mac 0S 10.7.5
    Qt: source pulled from Gitorious (qt/qt5)
    XCode: 4.3.3

    Getting an error trying to build WebCore:

    g++ (..snip..) obj/debug/MediaPlayerPrivateQTKit.o
    In file included from /System/Library/Frameworks/QuartzCore.framework/Headers/CAOpenGLLayer.h:6,
    from /System/Library/Frameworks/AppKit.framework/Headers/NSOpenGLLayer.h:10,
    from /System/Library/Frameworks/AppKit.framework/Headers/AppKit.h:143,
    from /System/Library/Frameworks/Cocoa.framework/Headers/Cocoa.h:13,
    from /System/Library/Frameworks/QTKit.framework/Headers/QTMovie.h:40,
    from /System/Library/Frameworks/QTKit.framework/Headers/QTKit.h:14,
    from platform/graphics/mac/MediaPlayerPrivateQTKit.mm:45:
    /System/Library/Frameworks/QuartzCore.framework/Headers/CALayer.h:50: error: expected unqualified-id before ‘[’ token
    make[4]: *** [obj/debug/MediaPlayerPrivateQTKit.o] Error 1
    make[3]: *** [debug-all] Error 2
    make[2]: *** [sub-Target-pri-make_first-ordered] Error 2
    make[1]: *** [sub-Source-WebCore-WebCore-pro-make_first-ordered] Error 2
    make: *** [module-qtwebkit-make_first] Error 2

    Actually looks like a mac compile error. Maybe g++ flag to relax a compiler constraint?

  • Moderators

    Try compiling with -platform macx-llvm. G++ is broken and shamefully outdated on Mac.

  • Worse problems - for one, even though I specify '-platform macx-llvm' (which it uses in the configure to build qmake), it still uses macx-g++ when it actually compiles the library sources (I see 'g++' and '-Imkspecs/macx-g++' in the compile line...) (Note I cleaned out the directory and did a fresh clone, just to make sure nothing was hanging around...)

    That failing, I copied over the macx-llvm makespec to macx-g++ to force the use of the llvm & then it gets various unresolves linking qtgui...

    I seem to recall that g++42 was a problem, before, but that g++40 worked ok (but that was to get it to work on 10.4.) Try that next, I guess...

Log in to reply