0

PyQt を使用するアプリケーションであるMnemosyneを Py2app 経由で Mac OS Lionにパッケージ化しようとしています。

次のようないくつかのエラーが発生します。

  • objc[2826]: クラス QCocoaView は /Volumes/Bullfrog/patrick/m2/./dist/Mnemosyne.app/Contents/MacOS/../Frameworks/libQtGui.4.dylib と /opt/local/lib/ の両方に実装されていますlibQtGui.4.dylib。2つのうちの1つが使用されます。どれが未定義です。
  • objc[2826]: クラス QCocoaWindow は /Volumes/Bullfrog/patrick/m2/./dist/Mnemosyne.app/Contents/MacOS/../Frameworks/libQtGui.4.dylib と /opt/local/lib/ の両方に実装されていますlibQtGui.4.dylib。2つのうちの1つが使用されます。どれが未定義です。

クラスの最初のバージョンは Py2App で使用されるものであり、使用する必要があるものです (アプリをスタンドアロンにしようとしています)。2 つ目は、MacPorts 経由でインストールしたシステム Qt です。システム Qt ではなくバンドルされた Qt を使用するには、アプリケーションに何を追加する必要がありますか?

また、次のようなステートメントもいくつかあります。

Mac OS X では、2 セットの Qt バイナリを同じプロセスにロードする場合があります。すべてのプラグインが正しい Qt バイナリに対してコンパイルされていることを確認します。DYLD_PRINT_LIBRARIES=1 をエクスポートし、1 セットのバイナリのみがロードされていることを確認します。QObject::moveToThread: 現在のスレッド (0x10246c880) はオブジェクトのスレッド (0x106985d00) ではありません。ターゲット スレッドに移動できません (0x10246c880)

正直なところ、このエラー メッセージに基づいて、ここで行う必要があることを行う方法がよくわかりません (私はコーダーではありません。ソフトウェアをパッケージ化するために最善を尽くしているだけです)。

4

1 に答える 1

5

この記事は解決策を提供します:アプリケーションのContent/Resourcesディレクトリに空のqt.confファイルを追加するだけです。

于 2012-06-17T12:20:49.593 に答える