Qt World Summit: Submit your Presentation

iOS and WatchOS Bitcode enabled?

  • Hi,

    I got an application that runs on iOS no problem. Now I need to add also WatchOS application the problem is that it requires bitcode enable set to "YES".

    Is it possible to enable this using Qt? I tried to recompile whole Qt as suggested here but I still get an error

    ld: -u and -bitcode_bundle (Xcode setting ENABLE_BITCODE=YES) cannot be used together

    when I try to compile my project

    Any suggestions?

    Thanks in advance

    EDIT: I removed some linker flags to check if that helps. And I found out that my libraries does not contain bitcode. Anyone knows how to compile Qt with bitcode flag enabled?

    ld:  '/usr/local/Qt-5.7.1/lib/libQt5Core.a(qobject.o)' does not contain bitcode. You ,must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library from the vendor, or disable bitcode for this targer. for architecture arm64

  • Lifetime Qt Champion


    There's a patch about adding support for watchOS but it hasn't been yet integrated. You can find it here

    Hope it helps

  • Thanks for fast answer, I just found out that tvos uses bitcode and looked into their mkspecs. Added bitcode support and I am compiling Qt right now. Let's hope it will work :D
    Also let's hope this watchOS support will be included in Qt5.8

    EDIT: After compiling the Qt with bitcode flags my application can compile. The problem is only with qmake changin the settings every time. But I created script which does evertything needed to change for me. Also some linker parameters were incorrect so I removed them.
    After all of this I can finally run watchOS application(objective-c) with Qt application on ios.

  • Lifetime Qt Champion

    Feature freeze being almost there, you should ping the developers on e.g. the #qt irc channel or the interest mailing list

  • @kolegs I am having the same error if i try to deploy the application via Xcode to my iphone. I am using Qt5.8 and it should have watchOS support on it.
    Which files did you changed? Could you tell me their names?



Log in to reply