【发布时间】:2012-06-17 02:24:07
【问题描述】:
我正在尝试通过 Py2app 在 Mac OS Lion 上打包使用 PyQt 的应用程序 Mnemosyne。
我遇到如下几个错误:
- objc[2826]:类 QCocoaView 在两者中都实现了 /Volumes/Bullfrog/patrick/m2/./dist/Mnemosyne.app/Contents/MacOS/../Frameworks/libQtGui.4.dylib 和 /opt/local/lib/libQtGui.4.dylib。将使用两者之一。 哪一个是未定义的。
- objc[2826]:类 QCocoaWindow 在两者中都实现了 /Volumes/Bullfrog/patrick/m2/./dist/Mnemosyne.app/Contents/MacOS/../Frameworks/libQtGui.4.dylib 和 /opt/local/lib/libQtGui.4.dylib。将使用两者之一。 哪一个是未定义的。
该类的第一个版本是在 Py2App 中使用的,也是应该使用的(我正在尝试使应用程序独立)。第二个是我通过 MacPorts 安装的系统 Qt。我必须向应用程序添加什么才能使其使用捆绑的 Qt 而不是系统 Qt?
还有几个这样的陈述:
在 Mac OS X 上,您可能会将两组 Qt 二进制文件加载到 相同的过程。检查所有插件是否针对正确的 Qt 编译 二进制文件。导出 DYLD_PRINT_LIBRARIES=1 并检查只有一组 正在加载二进制文件。 QObject::moveToThread: 当前线程 (0x10246c880) 不是对象的线程 (0x106985d00)。无法移动到 目标线程(0x10246c880)
老实说,仅基于此错误消息,我真的不明白如何在这里做我需要做的事情(我不是编码员;我只是在尽力打包软件)。
【问题讨论】: