⚠️ Forum Maintenance: Feb 6th, 8am - 14pm (UTC+2)

Building Qt5.4 for IOS Openssl

  • Hello! I am trying to build Qt5.4 for IOS with openssl support!
    I have found manual for another version, used as basic, just changing dest dirs and Qt version.
    I will write straight here:

    cd /Users/hugo/tmp
    git clone https://github.com/x2on/OpenSSL-for-iPhone.git
    cd OpenSSL-for-iPhone/

    Step two is to cross-compile Qt for iOS with OpenSSL support enabled (I only build the release version). First clone the Qt repository:
    cd /Users/hugo/tmp
    git clone http://code.qt.io/cgit/qt/qt5.git/
    cd qt5
    git checkout 5.4

    Then configure Qt for iOS with OpenSSL support:
    OPENSSL_LIBS='-L/Users/hugo/tmp/OpenSSL-for-iPhone/lib -lssl -lcrypto' ./configure -xplatform macx-ios-clang -release -I/Users/hugo/tmp/OpenSSL-for-iPhone/include/ -openssl-linked -c++11 -opensource --prefix=/Users/hugo/Qt/5.4/ios_ssl -nomake examples -nomake tests -v

    Finally I build and install Qt for iOS with OpenSSL support:
    make -j 4

    After that I receive Code sign error
    Code Sign error: No code signing identities found: No valid signing identities (i.e. certificate and private key pair) matching the team ID “(null)” were found.
    And one more about code signing error provisioning profile

    Currently I fixed first by adding my app dev account to XCode.
    But I have no prov. profile.
    I thought they are needed only for building on app for ios device!!!

    But I am just building QT!!! Why do I need that? Or maybe I need add something in build configuration?? Help, please!

  • Lifetime Qt Champion

    Hi and welcome to devnet,

    Maybe a silly question, did you also import your Signing Identities ?

  • @SGaist I have added dev account and refreshed to let xcode cath all needed. but there no provision profile because i havent created it( i have no admin/agent rights. main question is why do i need that for building Qt itself? Its strange. Or qt needs them to automatically use for deploying apps on devices using that code signing info?

  • Lifetime Qt Champion

    Deployment on device requires to have a developer account from Apple (it's not a Qt rule). Currently there's no need anymore to have separate subscriptions for OS X and iOS development (meaning if you want to make your application available through either or both App Stores). The deployment on the simulator on the other hand doesn't need that subscription. Also note that since 5.5 (I'm not sure for 5.4) you have the option to use the Secure Transport backend for your encryption needs, that would avoid the hassle of OpenSSL building

  • @SGaist thanks for reply) I understand that I need that for deployment on device but I am building just qt not an app. So i thought it might be unnecessary for building Qt itself. Cause when i am downloading qt for Ios i don't need to have that account. But i need it to build qt that's strange for me. I have ready code to port to ios so openssl is needed