在OSX上部署基于Qt QML的应用程序(使用WebKit)

时间:2010-11-05 14:52:21

标签: webkit webview qml

我们编写了一个大量使用QML的应用程序,现在是时候尝试部署它了,因为依赖QtWebKit,我遇到了令人烦恼的问题

我编译了应用程序,一切都在我的计算机上运行正常。然后我在.app上运行macdeployqt脚本,无论出于什么原因,WebView QML组件都说:“未安装模块QtWebKit”

在依赖于QtWebKit / WebView的OSX上部署基于QML的应用程序的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

macdeployqt尚未处理QML导入插件: http://bugreports.qt-project.org/browse/QTBUG-14342

您可以手动执行此操作(例如,对于QMLViewer):

1)将您感兴趣的插件从$ QTDIR / imports目录复制到$ QTDIR / bin / QMLViewer.app / Contents / MacOS,这样就可以了。

QMLViewer.app/Contents/MacOS/QtWebKit/qmldir

2)使用install_name_tool修复导入插件的引用到Qt框架:

install_name_tool -change /path/to/qt/*lib/QtCore.framework/Versions/4/QtCore @executable_path /../ Frameworks / QtCore.framework / Versions / 4.0 / QtCore QMLViewer.app/Contents/MacOS/ QtWebKit的/ libqmlwebkitplugin.dylib

对插件所依赖的其他Qt库(至少QtGui)执行相同的操作。

有关修复参考的更多信息,请参阅http://doc.trolltech.com/4.7/deployment-mac.html

答案 1 :(得分:0)

MartinJ's answer让我很难过。

对于使用Qt Quick 2的用户 - 使用文件夹QtWebkit中的$QTDIR/qml代替,或者您将会收到很多插件qtwebkit未实现的消息{ {1}}。