首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Macdeployqt不包括.app捆绑包中的声子

Macdeployqt不包括.app捆绑包中的声子
EN

Stack Overflow用户
提问于 2013-07-13 01:40:30
回答 2查看 373关注 0票数 0

各位程序员,大家好!

我已经用Qt写了一个视频播放器。在我的Mac上一切正常,但当我使用macdeployqt部署我的应用程序并打开结果时,我得到了以下消息:

代码语言:javascript
复制
WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded
WARNING: Phonon::createPath: Cannot connect Phonon::MediaObject ( no objectName ) to Phonon::AudioOutput ( no objectName ).
WARNING: bool Phonon::FactoryPrivate::createBackend() phonon backend plugin could not be loaded 
...

当然,它不能播放音频(在我的机器上或在另一台机器上)。Maqcdeployqt确实包含了Qt的其他部分和第三方库的问题。这只是那该死的声子。我觉得我犯了一个愚蠢的错误,但我就是找不到。我的应用程序的otool日志显示:

代码语言:javascript
复制
@executable_path/../Frameworks/phonon.framework/Versions/4/phonon (compatibility version 4.4.0, current version 4.4.0)

作为声子的唯一参照物。

我在qt的文档中读到了以下内容:

“Mac部署工具可以在QTDIR/bin/macdeployqt中找到。它旨在自动创建包含Qt库作为私有框架的可部署应用程序捆绑包的过程。mac部署工具还根据以下规则部署Qt插件:

未部署插件的-Debug版本。未部署-The设计器插件。始终部署-The图像格式插件。如果应用程序使用QtSql模块,则部署-SQL驱动程序插件。如果应用程序使用QtScript模块,则部署-Script插件。如果应用程序使用QtSvg模块,则部署-The svg图标插件。始终部署-The辅助功能插件。“

也许我有一个调试版的phonon?我不知道,我试过部署调试和发布版本,但都没有成功。

此外,我在这个页面中发现了一个相关的问题:http://www.justinfx.com/tag/phonon/,所以在部署后,我在我的捆绑包中包含了一个名为'PlugIns‘的文件夹和我系统中的phonon_backened文件夹:它在我的机器上播放音频(但它不能在另一台机器上播放它),我的应用程序在最后崩溃,所以不可能是这样的。

我使用的是c++,Qt 4.8.5,来自SDK的phonon (我没有安装任何版本的phonon,我只是安装了Qt),以及Mac (10.6.8)

我很乐意听到任何想法或建议。

提前谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-07-31 22:35:04

我没有找到错误的来源,但我绕过了它,通过在另一台Mac (即Lion)上的qt examples文件夹中进行macdeploying来绕过它。它在捆绑包中包含了'Plugins‘文件夹,里面有所有的语音内容,所以我现在将这个文件夹包含到我的Snow Leopard中手动部署的捆绑包中。它是丑陋的,但它从现在开始工作。

如果有人知道真正解决这个问题的方法,我将很高兴听到。

票数 0
EN

Stack Overflow用户

发布于 2013-12-17 02:34:43

我使用的是py2app ( pyinstallercx_freeze都不起作用),它几乎完美地创建了应用程序分发文件夹,只是它没有复制phonon后端。运行macdeplpyqt无济于事。

您的插件在应用程序结构中的位置是MyApp.app/Contents/PlugIns,因此我将该文件夹从Qt install (/Developer/Applications/Qt/plugins/phonon_backend/ )复制到PlugIns文件夹中。这仍然给出了相同的错误。

深入研究,我发现MyApp.app/Contents/Resource/qt.conf文件期望插件位于Resource/qt_plugins文件夹中,所以我创建了一个从PlugIns MyApp.app/Contents/PlugInsMyApp.app/Contents/Resource/qt_plugins的符号链接,现在一切都正常了。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17620865

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档