各位程序员好!
我用 Qt 编写了一个视频播放器。在我的 Mac 上一切正常,但是当我使用 macdeployqt 部署我的应用程序并打开结果时,我收到以下消息:
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 的其他部分和 3 方库问题。它只是该死的声子。我觉得我犯了一个愚蠢的错误,但我就是找不到。我的应用程序的 otool 日志显示:
@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 插件,根据以下规则:
- 未部署插件的调试版本。- 未部署设计器插件。-始终部署图像格式插件。- 如果应用程序使用 QtSql 模块,则部署 SQL 驱动程序插件。- 如果应用程序使用 QtScript 模块,则部署脚本插件。- 如果应用程序使用 QtSvg 模块,则部署 svg 图标插件。-始终部署可访问性插件。"
也许我有声子的调试版本?我不知道,我曾尝试部署调试版本和发布版本,但都没有奏效。
我还在此页面中发现了一个相关问题: http : //www.justinfx.com/tag/phonon/ 所以我在我的捆绑包中包含了一个名为“PlugIns”的文件夹,其中包含部署后系统内部的 phonon_backened 文件夹:它在我的机器上播放了音频(但它没有在另一台机器上播放),我的应用程序最后崩溃了,所以不能这样。
我正在使用 c++、Qt 4.8.5、来自 SDK 的声子(我没有安装任何版本的声子,我只是安装了 Qt)和 Mac OS X (10.6.8)
我很想听听任何想法或建议。
提前致谢。