Latest release of Qt does not work with XCode 8.2.1 on macOS Sierra



  • What is the procedure to get this to work properly?

    Is there a specific order that one must install? Xcode, CLT, Qt..OR..CLT, Xcode..OR Qt, CLT, XCode? AND…what about the Android shit..do I need the latest Android and Java SDKs NDKs et al???

    Is there a certain way projects from an older version of Creator must be imported?

    Certainly, I'm not the only developer to run into this issue. What has everyone else done? Tips? Hints?

    History..

    I had a working IDE..XCode, Qt, iOS and Android ALL worked. I was able to test iOS apps on both an actual device..iPhone4 and the iOS simulator. I was able to test and release an Android apps to the Google Play store. I tried to release the same app to the Apple Store. Nope..sorry. You have to upgrade to Sierra to do that. OH, BTW you need to get the latest version of Xcode. OH, BTW, you need the latest version of Qt. Now NOTHING WORKS!!!!!

    I installed the MacOS Sierra first. This was an Upgrade from 10.8.5 Mt Lion to 10.12.2 Sierra. Everything seemed to work OK MacOS/Sierra-wise.

    I next installed Xcode 8.2.1. I then installed Qt 4.0.3. I then Installed the CLTs. I Imported an old Qt .pro file that had previously work on my old IDE.

    ERROR after ERROR after ERROR. This was when trying to just get the Desktop 5.7.0 clang 64bit version to work. Finally got Desktop running.

    Tried the Android kit.. Android_for_armeabi_v7a_GCC_4_8_Qt_5_7_0 and it doesn't work.
    ERRORs!!!!!

    Tried the iOS kit..iphoneos_clang_Qt_5_7_0_for_iOS.. and surprise it does not work…Neither does the iOS Simulator.
    ERRORs!!!!!

    Please don't ask me to list the errors..I wouldn't begin to know where to start..too many.


  • Qt Champions 2016

    Hi
    Ok, there is nothing like
    "Xcode not set up properly. You may need to confirm the license agreement by running /usr/bin/xcodebuild without arguments."
    or anything like that?

    https://forum.qt.io/topic/71119/project-error-xcode-not-set-up-properly/8


  • Lifetime Qt Champion

    Hi,

    To add to @mrjj, Apple broke several things with their latest Xcode update. Some of which have already been fixed but you should update Qt to a more recent version like 5.7.1 or even 5.8RC (5.8.0 should be released next week if everything goes to plan)



  • @mrjj

    Thx. Tried that. But I may have done it incorrectly? I went into the Xcode bundle at /Contents/Developer/usr/bin and double clicked to run it.

    Thx for the link..I ran into most of the errors being discussed..but did not find the answers in a single thread like that.



  • @SGaist

    Qt 5.7.0 (Clang 7.0 (Apple), 64 bit) with Creator 4.0.3.

    I'm going to try version 8.0 of Xcode with the version of Qt/Creator listed above. If that doesn't go anywhere. 8.1, then 8.2. then Try updating to a newer Qt/Creator version.

    Thx for the replies..


  • Moderators

    @PSI_lbc Why not first update Qt to 5.7.1 ?


  • Lifetime Qt Champion

    It's pointless to try with the 8.0 version of Xcode, that's the version that introduced these breakage. Just use the latest and a more recent version of Qt.



  • Update qt and Xcode to latest versions. Everything works without any issue.



  • @jsulm

    That's what I did right after the OS update to Sierra.

    I used the Maintenance Tool to get the latest Qt version. Prior I was using 5.7.0.



  • @dheerendra

    Sorry. Not for me.

    The Xcode version I updated to was 8.2.1. That's the latest.


  • Lifetime Qt Champion

    Then go with 5.8RC



  • @SGaist

    OK. Rolled back and started over.

    Re-downloaded the Xcode and CLT installer from the Apple Dev site. Ran the CLT install. Ran the Xcode install. Ran the Sudo xcodebuild -install. Agreed to the license. Use the Qt MaintainanceTool to update. Ran it to get a new MT, then ran the MT again to get the updates. Ran Creator to check version/build. OK. 5.7.1. Run Creator. Open an existing project. Android and Desktop kit available. No iOS. Quit Creator. Run Xcode. Do nothing. Exit Xcode. Run Creator. Now iOS kit are available. ?? Build a desktop version.

    --results--
    Desktop build..General Messages after Build>qmake
    Checking for license updates ...
    /bin/sh: /Developer/Android-NDK/android-ndk-r10b/toolchains/arm-linux-androideabi-4.9/prebuilt/darwin-x86_64/bin/arm-linux-androideabi-g++: No such file or directory
    Checking for updated license succeeded (3 licenses fetched)

    Desktop build worked.

    Android build (debug) 1st pass..
    The API level set for the APK is less than the minimum required by the kit.
    The minimum API level required by the kit is 16.
    Error while building/deploying project qSpine (kit: Android for armeabi-v7a (GCC 4.8, Qt 5.7.1))
    When executing step "Build Android APK"

    Changed the API levels in the manifest from min API 9 to API 16 and target API 14 to API 16

    QtMobile-5.7/5.7/android_armv7/mkspecs/android-g++ -o main.o ../main.cpp
    arm-linux-androideabi-g++: error: unrecognized command line option '-fstack-protector-strong'
    make: *** [main.o] Error 1

    The '-fstack-protector-strong' option flag is in the makefile..
    CFLAGS = -fstack-protector-strong -DANDROID -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fno-builtin-memmove --sysroot=/Developer/Android-NDK/android-ndk-r10b/platforms/android-16/arch-arm/ -g -marm -O0 -Wall -W -D_REENTRANT -fPIC $(DEFINES)
    CXXFLAGS = -fstack-protector-strong -DANDROID -march=armv7-a -mfloat-abi=softfp -mfpu=vfp -fno-builtin-memmove --sysroot=/Developer/Android-NDK/android-ndk-r10b/

    But I don’t know why it’s failing. What is “-fstack-protector-strong”? Why is it needed and can it be disabled. Or commented out?

    Looking…


  • Moderators

    @PSI_lbc From the error message:
    "The API level set for the APK is less than the minimum required by the kit.
    The minimum API level required by the kit is 16."
    You should set higher API level version. Your Qt Kit requires at least 16.
    After this change run qmake and do a complete rebuild.



  • @jsulm

    Yep. Thx. Set it in the AndroidManifest.xml



  • In file -> ../android_armv7/mkspecs/commonandroid-base-tail.conf

    commented out -fstack-protector-strong from next line LBC re: arm-linux-androideabi-g++: error: unrecognized command line option '-fstack-protector-strong'

    #QMAKE_CFLAGS += -fstack-protector-strong -DANDROID
    QMAKE_CFLAGS += -DANDROID



  • Next problem...

    21:48:22: Starting: "/Developer/SDKs/QtMobile-5.7/5.7/android_armv7/bin/androiddeployqt" --input /Users/PSI/Projects/Qt-Mobile/OT2Go/qSpine/build-Android_for_armeabi_v7a_GCC_4_8_Qt_5_7_1-Debug/android-libqSpine.so-deployment-settings.json --output /Users/PSI/Projects/Qt-Mobile/OT2Go/qSpine/build-Android_for_armeabi_v7a_GCC_4_8_Qt_5_7_1-Debug/android-build --deployment bundled --android-platform android-21 --jdk /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home --ant /usr/bin/ant
    Warning: QML import could not be resolved in any of the import paths: Qt.test.qtestroot
    Warning: QML import could not be resolved in any of the import paths: QtQuick.Extras.Private.CppUtils
    Warning: QML import could not be resolved in any of the import paths: QtQuick.Extras.Private.CppUtils
    sh: /usr/bin/ant: No such file or directory
    Building the android package failed!
    -- For more information, run this command with --verbose.
    Generating Android Package
    Input file: /Users/PSI/Projects/Qt-Mobile/OT2Go/qSpine/build-Android_for_armeabi_v7a_GCC_4_8_Qt_5_7_1-Debug/android-libqSpine.so-deployment-settings.json
    Output directory: /Users/PSI/Projects/Qt-Mobile/OT2Go/qSpine/build-Android_for_armeabi_v7a_GCC_4_8_Qt_5_7_1-Debug/android-build/
    Application binary: /Users/PSI/Projects/Qt-Mobile/OT2Go/qSpine/build-Android_for_armeabi_v7a_GCC_4_8_Qt_5_7_1-Debug/libqSpine.so
    Android build platform: android-21
    Install to device: No
    21:48:29: The process "/Developer/SDKs/QtMobile-5.7/5.7/android_armv7/bin/androiddeployqt" exited with code 14.
    Error while building/deploying project qSpine (kit: Android for armeabi-v7a (GCC 4.8, Qt 5.7.1))
    When executing step "Build Android APK"
    21:48:29: Elapsed time: 00:54.


  • Moderators

    @PSI_lbc you need to install Ant on your host PC


  • Lifetime Qt Champion

    Or use Gradle, in any case updating the NDK to r10e would be a good idea.



  • @jsulm
    Thx. I'll locate and try Ant first



  • @SGaist
    By NDK, do you mean just the NDK or SDK, NDK, Apache, and ADK?

    Thx.



  • In Creator > Preferences..

    JDK Location:
    /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK/Home

    Not a JDK location.

    I guess The OS upgrade to Sierra did not include a Java update.. Does Qt require the newest Java version as well?

    Just noticed the "Download" icons to the right of the "Devices" screen.. DOH!


  • Lifetime Qt Champion

    NDK, there are more recent version that r10e but there's a bug in the gcc from latest 13 series. See here for more details.

    For the SDK, use the latest.



  • @SGaist

    OK. I'm a dummy. Where is the latest Android SDK? The Qt link takes you to a page that offers the Android Studio..which I downloaded..but cannot find the SDK.

    Is it hidden in the Android Studio app bundle?

    Current error preventing moving forward..
    Qt Creator needs a compiler set up to build. Configure a compiler in the kit options.

    Suggestions?


  • Lifetime Qt Champion

    Get just the command line tools under the Download part of the Android Studio page.

    The compiler is provided by the ndk so if you pointed it properly it should detect it.



  • @SGaist

    Thx. Deleted the Android Studio bs. Downloaded just the SDK tools..tools_r25.2.3-macosx.zip

    Made sure the path to the tools folder was set. WahLah! Android now builds and deploys to device. Only minor bug was a visual StatusBar “style” issue. Easily fixed.

    Now working on the iOS part of the equation. I have a Apple Developer Account. I have an active License. I’ve created and downloaded the certs and device provisioning profiles. The app builds but does not deploy to a device..signing issues. Xcode knows the cert and provisioning profile exist. Both are valid. I have tried removing the Cert and Provision from the Mac KeyChain and re-downloading both. In Xcode, I have tried Automatic and Manual provisioning..both give the same error when trying to deploy.

    /Users/PSI/Projects/Qt-Mobile/OT2Go/qSpine/build-iphoneos_clang_Qt_5_7_1_for_iOS-Release/Release-iphoneos/qSpine.app:
    invalid resource specification rule(s)

    Command /usr/bin/codesign failed with exit code 1

    ** BUILD FAILED **

    The following build commands failed:
    CodeSign Release-iphoneos/qSpine.app
    (1 failure)
    make: *** [xcodebuild-release-iphoneos] Error 65
    12:59:55: The process "/usr/bin/make" exited with code 2.
    Error while building/deploying project qSpine (kit: iphoneos-clang Qt 5.7.1 for iOS)
    When executing step "Make"
    12:59:55: Elapsed time: 00:46.

    There is an output line in the build:

    SDKROOT = iphoneos10.2

    The 5s iPhone that is the “target device” is running OS 9.2. Could this be the issue? I’m stumped.

    bolded text


  • Lifetime Qt Champion

    ios {
    	QMAKE_XCODE_CODE_SIGN_IDENTITY = "iPhone Developer"
    	MY_DEVELOPMENT_TEAM.name = “PSI_ibc (Personal Team)” <- Replace with appropriate team name
    	MY_DEVELOPMENT_TEAM.value = XXXXXXXXXX <- Replace with team ID that can be found in the membership page on the developer profile.
    	QMAKE_MAC_XCODE_SETTINGS += MY_DEVELOPMENT_TEAM
    }
    


  • @SGaist

    Thx.

    QMAKE_MAC_XCODE_SETTINGS += MY_DEVELOPMENT_TEAM
    

    OR..
    QMAKE_IOS_XCODE_SETTINGS += MY_DEVELOPMENT_TEAM


  • Lifetime Qt Champion

    I've used it as shown.



  • @SGaist

    Tried the fix you mentioned. It helped, but I was still getting:
    error: invalid resource specification rule(s)

    Searched the Apple forum,,
    https://forums.developer.apple.com/message/183357#183357

    Remove CFBundleResourceSpecification key from Info.plist and codesign works


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.