为什么是rc1而不是release版本?因为release版本的macdeploy的bug比rc1多
qml 很简单
import QtQuick 2.1
Rectangle{
width: 400
height: 300
color: "black"
}
我的.pro
QT += core gui qml quick
CONFIG += c++11
SOURCES += \
main.cpp
OTHER_FILES += \
main.qml
但我什至无法部署这个简单的应用程序
我的手稿
#******copy main.qml into the bundle**********
cp /Users/Qt/program/experiment_apps_and_libs/qmlTest2/main.qml /Users/Qt/program/experiment_apps_and_libs/qmlTest2/qmlTest2.app/Contents/MacOs
#*******create the folder and copy the plugins into the bundle**********
mkdir qmlTest2.app/Contents/PlugIns
mkdir qmlTest2.app/Contents/PlugIns/QtQuick
mkdir qmlTest2.app/Contents/PlugIns/QtQuick/LocalStorage
cp /Users/yyyy/Qt5.1.0RC1/5.1.0-rc1/clang_64/qml/QtQuick/LocalStorage/libqmllocalstorageplugin.dylib qmlTest2.app/Contents/PlugIns/QtQuick/LocalStorage
cp /Users/yyyy/Qt5.1.0RC1/5.1.0-rc1/clang_64/qml/QtQuick/LocalStorage/plugins.qmltypes qmlTest2.app/Contents/PlugIns/QtQuick/LocalStorage
cp /Users/yyyy/Qt5.1.0RC1/5.1.0-rc1/clang_64/qml/QtQuick/LocalStorage/qmldir qmlTest2.app/Contents/PlugIns/QtQuick/LocalStorage
mkdir qmlTest2.app/Contents/PlugIns/QtQuick.2
cp /Users/yyyy/Qt5.1.0RC1/5.1.0-rc1/clang_64/qml/QtQuick.2/libqtquick2plugin.dylib qmlTest2.app/Contents/PlugIns/QtQuick.2
cp /Users/yyyy/Qt5.1.0RC1/5.1.0-rc1/clang_64/qml/QtQuick.2/plugins.qmltypes qmlTest2.app/Contents/PlugIns/QtQuick.2
cp /Users/yyyy/Qt5.1.0RC1/5.1.0-rc1/clang_64/qml/QtQuick.2/qmldir qmlTest2.app/Contents/PlugIns/QtQuick.2
#**********call macdeployqt***************
macdeployqt /Users/Qt/program/experiment_apps_and_libs/qmlTest2/qmlTest2.app -verbose=3
我在我添加的每个插件上运行 otool -L,它们都成为 macdeployqt 之后的相对路径
当我通过 lldb 运行程序时,它总是给我错误消息
**file:///Users/Qt/program/experiment_apps_and_libs/qmlTest2/main.qml:23:1:未安装模块“QtQuick”导入QtQuick 2.1 **
我被困在一个空白的白色屏幕上,没有关于我做错了什么的信息。没有文档,当前文档几乎没用,因为 macdeploy 的 bug 自 Qt5.0.1 以来一直没有修复,我不知道他们什么时候会修复它(可能永远不会修复)。没有信息告诉我我需要哪个 dylib。这非常令人沮丧!有人知道如何在 mac os x 上部署 QtQuick2 应用程序吗?
如果这样继续下去,也许我最好继续使用 QWidget,至少我不必再遭受部署麻烦。我很惊讶他们花了很多时间来开发 QtQuick2,但没有发布有用的文档来教我们如何在他们的目标平台上部署应用程序。