Qt Forum

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Unsolved

    Unsolved qt5.6 macdeployqt creates broken paths for Helpers like QtWebEngineProcess

    Installation and Deployment
    qt5.6 osx 10.11
    1
    1
    638
    Loading More Posts
    • 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.
    • pavel_abr
      pavel_abr last edited by pavel_abr

      Hello all,

      I'm using the brew version of Qt5.6. When I run macdeployqt MyApp.app, I seem to get all the frameworks and libraries linked correctly.

      However, if I move the MyApp.app file to a different Mac where qt is not installed, I get errors running the app.

      Running otool -L /Applications/MyApp.app/Contents/Frameworks/QtWebEngineCore.framework/Helpers/QtWebEngineProcess.app/Contents/MacOS/QtWebEngineProcess returns this:

      /usr/local/Cellar/qt5/5.6.0/lib/QtWebEngineCore.framework/Versions/5/QtWebEngineCore
      /usr/local/Cellar/qt5/5.6.0/lib/QtQuick.framework/Versions/5/QtQuick (compatibility version 5.6.0, current version 5.6.0)
      /usr/local/Cellar/qt5/5.6.0/lib/QtGui.framework/Versions/5/QtGui (compatibility version 5.6.0, current version 5.6.0)
      /usr/local/Cellar/qt5/5.6.0/lib/QtQml.framework/Versions/5/QtQml (compatibility version 5.6.0, current version 5.6.0)
      /usr/local/Cellar/qt5/5.6.0/lib/QtNetwork.framework/Versions/5/QtNetwork (compatibility version 5.6.0, current version 5.6.0)
      /usr/local/Cellar/qt5/5.6.0/lib/QtWebChannel.framework/Versions/5/QtWebChannel (compatibility version 5.6.0, current version 5.6.0)
      /usr/local/Cellar/qt5/5.6.0/lib/QtPositioning.framework/Versions/5/QtPositioning (compatibility version 5.6.0, current version 5.6.0)
      /usr/local/Cellar/qt5/5.6.0/lib/QtCore.framework/Versions/5/QtCore (compatibility version 5.6.0, current version 5.6.0)
      /System/Library/Frameworks/OpenGL.framework/Versions/A/OpenGL (compatibility version 1.0.0, current version 1.0.0)
      /System/Library/Frameworks/AGL.framework/Versions/A/AGL (compatibility version 1.0.0, current version 1.0.0)
      /usr/lib/libc++.1.dylib (compatibility version 1.0.0, current version 120.1.0)
      /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1226.10.1)
      

      Instead of referencing the package's versions of QtWebEngineCore, it references the installed versions in /usr/local/Cellar/qt5/5.6.0 (that won't exist on a different machine) and promptly crashes.

      I've played around with install_name_tool, but can't get it to work correctly. And advice here is appreciated.

      Addendum:
      I've tried to run the following script (in the QtWebEngineProcess Helpers directory) :
      sudo install_name_tool -add_rpath "/Applications/MyApp.app/Contents/Frameworks/" QtWebEngineProcess
      sudo install_name_tool -change "/usr/local/Cellar/qt5/5.6.0/lib/QtWebEngineCore.framework/Versions/5/QtWebEngineCore" "@rpath/QtWebEngineCore.framework/Versions/5/QtWebEngineCore" QtWebEngineProcess
      ... for each broken link.
      However, now when I try to run my app I get the error of:
      dyld: Library not loaded: @executable_path/../Frameworks/QtQuick.framework/Versions/5/QtQuick Referenced from: /Applications/MyApp.app/Contents/Frameworks//QtWebEngineCore.framework/Versions/5/QtWebEngineCore Reason: image not found

      1 Reply Last reply Reply Quote 0
      • First post
        Last post