トップ 一覧 ソース 検索 ヘルプ RSS ログイン

Qtのインストールメモ

Qtをインストールしたときのメモ。いろいろ試行錯誤した結果、結局はシンプルなインストール手順になった(´∀`;)

インストールした環境はこんな感じ。

種類内容
OSWindows 7 Professional (64bit)
コンパイラVisual Studio 2008 sp1
Qtのソースqt-win-opensource-src-4.5.3.zip

コンパイルに使ったのはx86環境。x64でもコンパイル出来るんだろうか?

Qtのソースは公式サイトから何種類か落とせるけど、開発環境もMinGWもいらないのでソースコードのみのアーカイブをダウンロード。これは、ftpから探す方が速いかも。

 準備

アーカイブを展開

展開先をそのままインストール先にするので、どこに展開するかは慎重に。

今回は『C:\devenv\qt\qt4.5.3』に展開。

環境変数を設定

Qtの環境で必要になる環境変数を設定しておく。

項目内容
PATHC:\devenv\qt\qt4.5.3\bin を追加
QMAKESPECwin32-msvc2008

qmakeをいじる

話せば長くなるんだけど、*.pdbを消されるのが嫌なのでqmakeを修正。もうちょっとましなやり方がありそうな気がするんだが・・・ これが一番楽だしw

ファイル:C:\devenv\qt\qt4.5.3\qmake\generators\win32\msvc_nmake.cpp
修正箇所:line: 216-221
修正後のソース:

    if(project->isActiveConfig("debug")) {
//      project->values("QMAKE_CLEAN").append(project->first("DESTDIR") + project->first("TARGET") + version + ".pdb");
        project->values("QMAKE_CLEAN").append(project->first("DESTDIR") + project->first("TARGET") + version + ".ilk");
//      project->values("QMAKE_CLEAN").append("vc*.pdb");
        project->values("QMAKE_CLEAN").append("vc*.idb");
    }

つまり、『.pdb』関係の行をコメントアウト。

 release版をコンパイル

メインのライブラリの他、ツール、デモ、サンプルなど、まとめて全部コンパイル。

configure

> cd C:\devenv\qt\qt4.5.3
> configure -release -shared -D _CRT_SECURE_NO_WARNINGS

手元の環境で15分ちょっと。

make

> nmake

makeだけで1時間40分ぐらい。この時点で約1.38GB。

clean

> nmake clean

この時点で約535MB。

デモやサンプルの動作を確認。

 debug版をコンパイル

開発に必要となるライブラリをコンパイル。

configure

> cd C:\devenv\qt\qt4.5.3
> configure -debug -shared -D _CRT_SECURE_NO_WARNINGS

15分程度。

nmake

> nmake sub-src

ターゲットはメインのライブラリだけ。それでも40分ぐらいかかった。この時点で約2.2GB。

clean

> nmake clean

この時点で約965MB。適当にコンパイルのテストをしておく。Visual Studioからデバッグ実行して、Qtの中まで追いかけられればok。たぶん。

 不要なファイルを削除

ここから先は気分次第で。

中身が空のディレクトリを消す

中身が空のディレクトリが3000近く残ってるので削除。さくっと。

Makefileを消す

Makefileだけで100MB使ってるので削除。日時でソートして、インストール中に作られた物だけを消すのがポイント?

*.vcprojと*.slnを消す

Makefileと同じようにして削除。

さらに無駄なファイルを消す

src\3rdparty\webkit\WebCoreに入ってるChangeLogを削除。これだけで17MBも使ってるという・・・ WebKit、恐るべし。

これだけ削除して約834MB。まぁ、こんな物かな? あとは、好みに応じてqmakeを元に戻しておきましょう。


(2009/11/03 メモ,Qt