3

以下を含む大規模な既存の C++ プロジェクトがあります。

  • 4つのアプリケーション
  • 50 以上のライブラリ
  • 20 以上のサードパーティ ライブラリ

このプロジェクトでは QMake (Trolltech の Qt の一部) を使用して Linux で製品版をビルドしていますが、私は MacOS でのビルドで遊んでいました。

QMake を使用して MacOS に組み込むことはできますが、最終的な .app の作成に問題があります。すべてのサード パーティ フレームワークと動的ライブラリ、すべてのプロジェクトの動的ライブラリを収集し、アプリケーションがそれらを確実に見つけられるようにする必要があります。

install_name_tool の使用についてオンラインで読んだことがありますが、それを自動化するプロセスがあるかどうか疑問に思っていました。

(たぶん、答えは XCode を使用することです。関連する質問を参照してください。ただし、uic と moc の構築には問題があります)

ありがとう

4

3 に答える 3

3

これはあなたにとって大きな助けになると確信しています:

デプロイqt

お役に立てれば !

于 2008-08-26T12:00:19.607 に答える
2

Last.fmでも同じ問題があります。DeployQtを調べましたが、サードパーティのライブラリがある場合はあまり役に立ちません。最後に、Makefileを生成するperlスクリプトを作成しました。これを使用して、.appや.dmgを生成できます。

ここにアップロードしました:http ://www.methylblue.com/detritus/QMake.dmg/

これを使用するには、これをアプリケーションのプロファイルに追加します。

 macx*:!macx-xcode:release {
     system( QT=\'$$QT\' QMAKE_LIBDIR_QT=\'$$QMAKE_LIBDIR_QT\' $$ROOT_DIR/common/dist/mac/Makefile.dmg.pl $$DESTDIR $$VERSION $$LIBS > Makefile.dmg )
     QMAKE_EXTRA_INCLUDES += Makefile.dmg   
}

すべてがまだ移植可能ではないことは確かですが、他の誰かが使用して、それがそうであるかどうかを確認するのは良いことです。

これは基本的にこのコードの最初の公式リリースですので、バグレポートと改善点を送ってください。ありがとう。

于 2008-09-17T11:08:43.243 に答える
0

Qt アプリを OS X 上で静的にビルドすることで、この問題を完全に回避しました。

于 2008-09-04T15:13:54.793 に答える