開発メモ

Qt-4.3.1 Opensource Edition & Microsoft Visual C++ 2005 Express Edition

Qt-4.3.1 を VC2005 上でコンパイルした際のメモです.

Visual C++ 2005 Express EditionとPlatform SDK のインストール

インストール場所はデフォルト(C:\Program Files\ 以下).

Platform SDKをVisual Studioで使えるようにする.
http://www.microsoft.com/japan/msdn/vstudio/express/visualc/usingpsdk/

Qt-4.3.1 Windows Open Source Edition の入手

ftp://ftp.trolltech.com/qt/source/ からqt-win-opensource-src-4.3.1.zip を入手。

以下のフォルダを作成し、

D:\Qt\4.3.1-msvc2005\

アーカイブの中身をこのフォルダへ展開.

Qt-4.3 のパッチを入手

sourceforge から acs-4.3.x-patch3.zip を入手

アーカイブを展開し,D:\Qt\4.3.1-msvc2005\ 以下へ中身をコピー。

VC2005の設定変更

acs-4.3.x-patch3.zip に含まれている Readme43.txt に書かれているとおりに

C:\Program Files\Microsoft Visual Studio 8 Express\Common7\Tools\vsvars.bat

を編集する.

@set INCLUDE=C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE;%INCLUDE%
 ↓
@set INCLUDE=C:\Program Files\Microsoft Platform SDK\Include;C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE;%INCLUDE%
@set LIB=C:\Program Files\Microsoft Visual Studio 8\VC\LIB;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\lib;%LIB%
 ↓
@set LIB=C:\Program Files\Microsoft Platform SDK\LIB;C:\Program Files\Microsoft Visual Studio 8\VC\LIB;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\lib;%LIB%

パスが通っていることを確認するために,VC2005のコマンドプロンプトを開いて,

nmake /?

を実行してみる.

Qtにパッチを当てる

VC2005のコマンドプロンプトで D:\Qt\4.3.1-msvc2005 へ移動し,installpatch43.bat を実行.

D:\Qt\4.3.1-msvc2005> installpatch43.bat
patching file qconfigure.bat
patching file examples/threads/waitconditions/waitconditions.pro
patching file misc/bcc32pch/Makefile.win32-borland
patching file misc/bcc32pch/bcc32pch.cpp
patching file misc/bcc32pch/bcc32pch.pri
patching file misc/bcc32pch/bcc32pch.pro
patching file mkspecs/win32-bccx/qmake.conf
 
   [snip]

patching file tools/porting/src/rpptreeevaluator.cpp
patching file tools/porting/src/rpptreewalker.cpp
patching file tools/porting/src/src.pro
Press any key to continue . . .
Now run qconfigure.bat

configureの実行

Qt付属の configure.exe でいちいちオプションを与えるのは面倒なので,パッチが生成してくれた qconfigure.bat を代わりに使用する.

D:\Qt\4.3.1-msvc2005> qconfigure.bat msvc2005 -release -static

プロンプトが3回表示される.

  1. ライセンスの確認. 'y'をタイプして Enter.
  2. ビルド内容についての確認.'y'をタイプして Enter.少し時間がかかる.
  3. Makefileが生成されることの確認.'y'をタイプして Enter.

以下のようなメッセージが表示されて,ビルドの準備が完了.

====================================================

You are now ready to build Qt (msvc2005)

If you specified -static, type 'nmake sub-src'
               otherwise, type 'nmake'

To start over, type 'nmake distclean'
and then re-run qconfigure.bat

====================================================

Qtのビルド

今回はリリース用ライブラリしかビルドしないので,

D:\Qt\4.3.1-msvc2005> nmake sub-src

暫くコンパイル.

コンパイル環境の設定

作成中.

Visual Studioのプロジェクト作成

作成中.

VC2005上でコンパイル

作成中

現状の問題

  • rint() が無い
  • snprintf() が無い
  • strtof()が無い
  • VC2005は名前空間stdに含まれるC標準関数を扱えない.
  • windows.hでminとmaxがマクロ定義されており,std::min, std::maxと衝突する

VisualC++には 強制インクルード 機能があるらしいので,rint()とsnprintf()を定義したヘッダファイルを作っておく. C標準関数は,using構文で強制的に名前の外に出してやらなければならない. windows.hをinclude後にundefしておかなければならない.

参考リンク


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2016-03-14 (月) 14:51:37 (1254d)
SourceForge.JP
Creative Commons License
RoboCup tools by Hidehisa Akiyama is licensed under a Creative Commons 表示-非営利 2.1 日本 License.