Qt for Visual Studio 2010をビルドする方法


137

Visual Studio 2010でQtを使用するための安定したソリューションを提供するハウツーを見つけるのに苦労したので、すべての情報といくつかの試行錯誤を収集した後、自分のソリューションをガイドに書きたいと思います。

問題、またはビルド済みのバイナリを使用できないのはなぜですか?

Visual Studio 2008用にビルドされたバイナリを使用すると、いくつかの特別なケースでは機能するようですが、機能しないことがわかりました。私の場合、問題なくコンパイルされましたが、次のようなランタイムエラーが発生します。

問題2

またはVisual Studio 2010から起動した場合:

問題

更新:なぜそれが一部の人には効果があるのか​​、他の人には効果がないのかを分析しているブログ投稿を見つけました。つまり、同じマシンにVisual Studio 2008がインストールされているかどうかによって異なります。 http://blog.paulnettleship.com/2010/11/11/troubleshooting-visual-studio-2010-and-qt-4-7-integration/

最も重要なこと(私が愚かに気付かなかったこと)は、Visual Studio 2008がインストールされていない場合、Visual Studio 2008のコンパイル済みライブラリとDLL(Qt Webページで入手可能)を使用できないことです。その理由は、ダウンロードしたQt SDKはVC9.0 DebugCRTに依存するデバッグビルドであるため、再配布可能なインストーラーとしては入手できないVisual C ++ 2008 Debug Runtimeがインストールされている必要があるためです。DebugCRTをインストールする唯一の方法は、Visual Studio 2008全体をインストールすることです。


がんばってくれてありがとう。また、なぜVS 2008バイナリを使用すべきでないのかを説明することも役立つでしょう。問題なくVS2010でプロトタイプテストプロジェクトをいくつか開発しましたが、展開の問題があると述べた人を覚えていますか?
ラルフ

私の経験を最後のセクションに追加しました。一般に、VS2010でQtを使用する場合はQtをコンパイルする必要があることを示す多くのレポートがネット上で見つかりました。それはVS2008の存在かもしれないことを告げる1つのページがあります。
ハイパーノット

ファンタスティック、これは多くの人に役立つと思います:)
Ralf

こんにちは、私が取得しものですnmake。ビルドを試みる前に、以下を使用しました:configure.exe -release -no-ltcg
Mateen Ulhaq、2011

2
今後の参考のために、Qtドキュメントサイトにソースからコンパイルするためインストール手順が実際に含まれていることを知っておくとよいでしょう。
Ephphatha 2011

回答:


142

まず、Visual Studio 2010でQtを使用する場合、Visual Studio 2008用に作成されたビルド済みのバイナリを使用することはできないことを理解することが非常に重要ですが、ソースからコンパイルする必要があることです。

Qtのダウンロード

オンhttps://www.qt.io/download/

2017年アップデート:最新のQt 4.xブランチ(Qt 4.8.6)には2つのビルド済みパッケージがあり、現在アーカイブセクションにあります。

  1. http://download.qt.io/archive/qt/4.8/4.8.6/qt-opensource-windows-x86-vs2010-4.8.6.exe
  2. http://download.qt.io/archive/qt/4.8/4.8.6/qt-opensource-windows-x86-vs2008-4.8.6.exe

「Qtライブラリ4.8.6 for Windows(Visual Studio 2008、218 MB)」をクリックしてQtをダウンロードするのではなく、その上の「zip」リンクをクリックしてください。

リンク選択

そのリンクで、「qt-everywhere-opensource-src-4.8.6.zip」のような大きなzipファイルを取得します。これをフォルダーに解凍し、そのパスを「E:\ Qt」などの小さくて良いものにします

Visual Studioコマンドプロンプト

ソースができたので、バイナリをビルドする必要があります。それを行うには、Microsoft Visual Studio 2010\Visual Studio Tools\Visual Studio Command Prompt (2010)スタートメニューからリンクを開くか、タスクバーに固定します(良いアイデアです)。これは、Visual Studio 2010ツールでビルドするためのすべての変数が設定された特別なコマンドプロンプトです。

コマンドプロンプト内で、古い学校のDOS方法を使用して抽出したQtフォルダーに移動します。つまり、ドライブ文字をで変更しE:、ディレクトリを入力しcd Qt、ディレクトリの内容をでリストする必要がありますdir。タブ名を使用して、ディレクトリ名を確認できます。正しいディレクトリに到達すると、dirコマンドは次のようなものを返します。

コマンドライン

Qtの構築

これで、構成と構築の時間です。ミニマリストのQtを構成するために、以下のフラグをで使用していますconfigure.exe。コピーしてコマンドラインに貼り付けるだけです。を見てのQtのリファレンスマニュアル使用に使用したりしないように何のフラグのために。

configure.exe -release -no-webkit -no-phonon -no-phonon-backend -no-script -no-scripttools -no-qt3support -no-multimedia -no-ltcg

一度 configure.exe終了している、あなたは、ビルドプロセスを開始する必要があります(それは私のために10分でした)。上記のフラグを使用すると、約20〜30分かかります。開始するには、次のように入力します。

nmake

環境変数の設定

基本的には完了です。あなたがする必要があるのは、Qtを見つける場所をプログラムに伝える環境変数(QTDIRPATH)を設定することだけです。Windows 7を使用している場合は、次のコマンドを使用しQTDIRて、インストールディレクトリを設定できます。

setx QTDIR e:\Qt

の設定にはPATHパスエディタの使用を強くお勧めします。パスエディター内

add the directory of Qt\bin to your PATH

(システムパスにあるかユーザーパスにあるかは関係ありません)

使用したい場合 Control Panel\System\Environment Variablesたい場合は、そこで設定することもできます。

Qt Visual Studioアドイン

これで、ログオフログオンまたは再起動後、すべてのQtデモアプリケーションが正しく起動するはずです(bin \ qtdemo.exeを確認することをお勧めします)。これで、QtダウンロードページからVisual Studioアドイン(qt-vs-addin-1.1.9.exe)をダウンロードしてインストールできます。完全に機能します。

加える

付録A:公式指示:

Qt Webサイトの公式wikiにQt 4.8 WindowsへのQtのインストールというページがありますが、重要な情報が不足していることがわかりました。

参考文献

Qt DevNetフォーラム
最小限のQtビルドに推奨されるフラグ
Visual C ++ 2010でQt 4.5を構築
するQtを静的
Qt としてコンパイルする方法Qt 4.8:Qtのオプションを構成
する
WindowsでPATH環境変数を問題なく編集する-op111.net


2
これはすばらしいことですが、カスタムビルドのQtアシスタントで問題が発生しないようにするには、構成フラグに-qt-sql-sqliteを追加します。ドキュメントデータベースを正常に読み取るには、このプラグインが必要なようです。
neuviemeporte

素晴らしいガイド!1つのメモ-1〜2日セットアップしようとしていて、その過程でmingwにパス変数がいくつか追加されました-これらはnmakeを壊し、動作する前に削除する必要がありました。
David Hall、

2
もう1つ注意:QTソースが配置されているフォルダーへのパスにスペースが含まれている場合、VSツールはQTのビルドを拒否します。少なくとも私の場合はそうです。
ローマクルグロフ2011年

10
ただ1つの質問です。なぜQtは、VS 2010のプリコンパイルされたディストリビューションをまだ提供していないのですか?
Matt Montag

2
皆さんにお知らせするだけです。元の投稿のリンクが機能しなくなりました。digiaサイトを検索してアドインがないことを発見するには、かなり時間がかかります。従わなければならない主なリンクは次のとおりです。qt
project.org

25

Qt V4.8.0にはVisual Studio 2010のビルド済みバイナリが含まれているため、これを行う必要はありません。http: //qt.nokia.com/downloads/windows-cpp-vs2010


2
parsley72 Visual Studio 2010のビルド済みバイナリは、32ビットデバッグモードで作業する予定がある場合にのみ役立ちます。そうでない場合、zseroによって投稿されたガイドは、特にアーキテクチャに関するオプションを変更したい場合に非常に役立ちます。

絶対に!しかし、事前構築されたライブラリが利用可能になる前に質問が返されたので、代替案があることを人々に知らせています。
パセリ72 2012

1

可能性のあるソリューションへのリンクはいつでも歓迎しますが、リンクの前後にコンテキスト追加して、他のユーザーがそれが何であるか、なぜそこにあるのかを理解できるようにしてください。ターゲットサイトに到達できない、または永久にオフラインになる場合に備えて、常に重要なリンクの最も関連性の高い部分を引用してください。なぜ、どのようにして一部の回答が削除されるのかについては、外部サイトへのリンク以上のものが考えられる理由であることを考慮に入れてください。
Maximilian Ast
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.