Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
  • Search
  • Get Qt Extensions
  • Unsolved
Collapse
Brand Logo
  1. Home
  2. Qt Development
  3. Installation and Deployment
  4. 5.8 and macdeployqt
Forum Updated to NodeBB v4.3 + New Features

5.8 and macdeployqt

Scheduled Pinned Locked Moved Solved Installation and Deployment
5 Posts 3 Posters 1.7k Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • P Offline
    P Offline
    PSI_lbc
    wrote on last edited by
    #1

    My .pro file contains the following configuration adds

    equals(QT_MAJOR_VERSION, 5) {
    #5.8.0
    QT += core gui
    QT += widgets
    QT += webkitwidgets
    QT += printsupport
    QT += xml
    QT += network
    }

    At the end of a build/compile, this displays..
    ..F/Developer/SDKs/QtMultiC/5.8/clang_64/lib
    -framework QtWebKitWidgets
    -framework QtPrintSupport
    -framework QtWidgets
    -framework QtGui
    -framework QtCore
    -framework DiskArbitration
    -framework IOKit
    -framework QtWebKit
    -framework QtNetwork
    -framework QtXml
    -framework OpenGL
    -framework AGL
    08:51:56: The process "/usr/bin/make" exited normally.

    I assume that the only "frameworks" that need to be included in the app bundle are those listed in the build output.

    Yet, when I run macdeployqt to make the bundle, this is what it includes..

    ..as you would expect..
    QtWebKitWidgets.framework
    QtPrintSupport.framework
    QtWidgets.framework
    QtGui.framework
    QtCore.framework
    QtWebKit.framework
    QtNetwork.framework
    QtXml.framework
    QtOpenGL.framework

    ..but these are included anyway. .even though hey are not used in the project.
    QtMultimedia.framework
    QtMultimediaWidgets.framework
    QtPositioning.framework
    QtSensors.framework
    QtSql.framework

    It's like macdeployqt thinks the desktop app is to be deployed to an iOS device. A desktop app does not need QtPositioning or QtSensors. And the app definitely does not use QtSQL. AFAIK it does not use QtMultiMedia.

    If I try to delete the extra Qt frameworks, the app crashes on startup.

    1 Reply Last reply
    0
    • SGaistS Offline
      SGaistS Offline
      SGaist
      Lifetime Qt Champion
      wrote on last edited by
      #2

      Hi,

      That's because you don't take into account indirect dependencies. In this case, they all come from QtWebKit.

      Interested in AI ? www.idiap.ch
      Please read the Qt Code of Conduct - https://forum.qt.io/topic/113070/qt-code-of-conduct

      P 1 Reply Last reply
      0
      • SGaistS SGaist

        Hi,

        That's because you don't take into account indirect dependencies. In this case, they all come from QtWebKit.

        P Offline
        P Offline
        PSI_lbc
        wrote on last edited by
        #3

        @SGaist

        Thanks. I would not have expected that.

        Is there a Qt tool like the Windows Depends tool or just use Depends for Windows DLL dependancies?

        I'll be needing to package a Windows build, too..that uses the same code base as that of the Mac version.

        Or should I just assume the same named .DLL libraries are used?

        jsulmJ 1 Reply Last reply
        0
        • P PSI_lbc

          @SGaist

          Thanks. I would not have expected that.

          Is there a Qt tool like the Windows Depends tool or just use Depends for Windows DLL dependancies?

          I'll be needing to package a Windows build, too..that uses the same code base as that of the Mac version.

          Or should I just assume the same named .DLL libraries are used?

          jsulmJ Offline
          jsulmJ Offline
          jsulm
          Lifetime Qt Champion
          wrote on last edited by
          #4

          @PSI_lbc Not sure whether I understood your question correctly.
          Take a look at this: http://doc.qt.io/qt-5/windows-deployment.html

          https://forum.qt.io/topic/113070/qt-code-of-conduct

          P 1 Reply Last reply
          1
          • jsulmJ jsulm

            @PSI_lbc Not sure whether I understood your question correctly.
            Take a look at this: http://doc.qt.io/qt-5/windows-deployment.html

            P Offline
            P Offline
            PSI_lbc
            wrote on last edited by
            #5

            @jsulm

            Yep. Skimmed those docs. Missed the part about windeployqt.

            I ended up using the Depends tool. Not surprisingly, it came up with a list that matched what I expected..but not what the program actually needed to run..it did not find the indirect dependancies.

            Everything listed by macdeployqt was also required for the Windows version of the program..along with a number of Windows specific support DLLs. I'll give the windeployqt utility a try at another time, but I suspect it will do a better job than Depends.

            Thx for everyone's help.

            1 Reply Last reply
            0

            • Login

            • Login or register to search.
            • First post
              Last post
            0
            • Categories
            • Recent
            • Tags
            • Popular
            • Users
            • Groups
            • Search
            • Get Qt Extensions
            • Unsolved