Question

I'm trying to deploy an application to Mac OSX, but it doesn't work.

After build my app it seems to be working fine, running inside Qt Creator, I used QML and C++ to build the app. I've used the command line:

macdeployqt MyApp.app -dmg

After that a .dmg file is generated but the app inside that doesn't work. It opens an empty window. Worse than that, after deployed app execution also my app in Qt Creator starts to show only an empty window showing the following output:

qrc:/qml/main.qml:1:1: module "QtQuick" is not installed
qrc:/qml/main.qml:4:1: module "QtQuick.Controls" is not installed
qrc:/qml/main.qml:2:1: module "QtQuick.Dialogs" is not installed
qrc:/qml/main.qml:1:1: module "QtQuick" is not installed
qrc:/qml/main.qml:4:1: module "QtQuick.Controls" is not installed
qrc:/qml/main.qml:2:1: module "QtQuick.Dialogs" is not installed
qrc:/qml/main.qml:1:1: module "QtQuick" is not installed
qrc:/qml/main.qml:4:1: module "QtQuick.Controls" is not installed
qrc:/qml/main.qml:2:1: module "QtQuick.Dialogs" is not installed

otool -L shows me this:

@executable_path/../Frameworks/QtQuick.framework/Versions/5/QtQuick (compatibility version 5.2.0, current version 5.2.0)
@executable_path/../Frameworks/QtQml.framework/Versions/5/QtQml (compatibility version 5.2.0, current version 5.2.0)
@executable_path/../Frameworks/QtNetwork.framework/Versions/5/QtNetwork (compatibility version 5.2.0, current version 5.2.0)
@executable_path/../Frameworks/QtCore.framework/Versions/5/QtCore (compatibility version 5.2.0, current version 5.2.0)
@executable_path/../Frameworks/QtGui.framework/Versions/5/QtGui (compatibility version 5.2.0, current version 5.2.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/libstdc++.6.dylib (compatibility version 7.0.0, current version 60.0.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 1197.1.1)

I've deleted all my old Qt libraries that I've in my system (or I suppose to, can't find Qt in anywhere else now, only the 5.2 installation). Anyone has any idea about what's happening?

Was it helpful?

Solution 2

I had the same problem with Qt 5.0.1 and Qt 5.1.0. To fix it I created my own version of macdeployqt. I think it'll work for Qt 5.2.0. Please check it: https://github.com/MaximAlien/macdeployqt.

OTHER TIPS

Since Qt 5.2 a new option has been added to macdeployqt that parses all your QML files to see the frameworks you need and copy them properly. This is how I launch macdeployqt for my app:

macdeployqt path/to/my.app -qmldir=./path/to/my/qml/root -dmg
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top