2013-09-22 9 views
6

私はQtを使い始めました。私はウィンドウズ32ビットバージョン(666mB)をダウンロードして、何もしていない。私は簡単な電卓のアプリを作った。 Qtクリエイターから実行したときにアプリケーションが実行されますが、ビルドされたexeではdllが見つからないと表示されます。 私は静的ビルドを作成したい(私はそれについて読んだが、実行することができない)Qtで静的ビルド(スタンドアロンアプリケーション)

私の目的は、完全に機能する電卓を作成することです)、依存関係を手動で追加する必要はありません。 私はconfigure -staticについて読んだことがありますが、使用方法は分かりませんでした。 ご協力いただきありがとうございます。

+1

この質問を参照してください:http://stackoverflow.com/questions/1458252/static-build-in-qt-on-windows-vista?rq=1。 Qtを静的に構築する方法について説明しています。 Qtの静的バージョンは非商用アプリケーション用であることに注意してください。 –

+0

私はそれを理解していませんでした。 詳細なチュートリアルを教えてください。 –

+0

も参照してください。[Qt 5スタティックを構築するには?](http://stackoverflow.com/q/15340688/341970) – Ali

答えて

8

ソースから自分でQtをビルドする必要があります。 は間違いなくにQtの2つのビルドを維持したいと考えています。デバッグのためには、合理的なリンク時間があるので、共有ビルドを使用する必要があります。リリースでは、静的なビルドを使用する必要があります。リンクタイムコードの生成には間違いなく、実行可能ファイルを小さくする必要があります。また、簡単なアプリケーションのビルドには1分程度かかります。これは、「リンク」が実際にQtとアプリケーションの両方のマシンコードを生成し、そのコードがアプリケーション固有のものであるため、一般的により優れたパフォーマンスを発揮するからです。

ソースの複数のコピーに対してディスク領域を無駄にしないで行う方法は、ソース外のQtビルドを使用することです。これまでは静的なQt 5.1.1ビルドが壊れていましたので、以下はVisual StudioのQt 4でのみ動作します。

  1. C:\Qt\4.8.5、たとえば、にソースをダウンロードしてください。

  2. C:\Qt\4.8.5-sharedを作成します。ビジュアルスタジオコンソール、CDを開き、その他のオプションを使用してC:\Qt\4.8.5\configure.exe -sharedを実行します。次に、nmakeまたはjomを使用して構築します。

  3. 作成C:\Qt\4.8.5-static。ビジュアルスタジオコンソール、CDを開き、その他のオプションを使用してC:\Qt\4.8.5\configure.exe -static -ltcgを実行します。次に、nmakeまたはjomを使用して構築します。

link the plugins statically to your release build of the applicationが必要です。

Qt Creatorを使用すると、Qtの複数のビルドを並列で簡単に使用できます。私は静的ビルドを動作させるためにQt 4とQt 5(静的と共有の両方)を使用してビルドを行います。

+0

静的なQt 5.1.1ビルドがどのように壊れているかを明確にすることはできますか?それが5.2で修正されているかどうか知っていますか?また、静的ビルドを動作させるためにローカルで修正されたことを知りたいと思っています。 +1の答え。 – JBentley

+1

@JBentley参照[この回答](http://stackoverflow.com/a/21862990/1329652)。 –

関連する問題