!!!WindowsでのwxWidgetsのビルド ご本家の「http://www.wxwidgets.org/」より、 「wxMSW-2.6.2.zip」をダウンロードしてきて解凍します。 これを、「VC++ .NET2003」でビルドしてみます(VC++ 6.0でも同じやり方で可能)。 この場合、Staticライブラリとしてビルドします。 !!ライブラリのビルドとインストール 「wxWidgets2.6.2\build\msw\wx.dsw」をVisualStudio(VC++)で開きます。 プロジェクト変換のダイアログが出ますが、そのまま「はい」で進めていきます。 ソリューション構成より「Debug」を選択してビルドします。 すると、デバッグ用のinclude/libが以下に作成されます。 wxWidgets2.6.2\include ... インクルードファイルの存在するパス wxWidgets2.6.2\lib\vc_lib\mswd ... 設定情報(wx/setup.h)へのパス wxWidgets2.6.2\lib\vc_lib ... ライブラリファイルの存在するパス 同じように、ソリューション構成より「Release」を選択してビルドします。 すると、リリース用のinclude/libが以下に作成されます。 wxWidgets2.6.2\include ... インクルードファイルの存在するパス wxWidgets2.6.2\lib\vc_lib\msw ... 設定情報(wx/setup.h)へのパス wxWidgets2.6.2\lib\vc_lib ... ライブラリファイルの存在するパス 「wx/setup.h」の参照がある点に注意してください。 その他のincludeファイルは、デバッグ・リリースともに同じです。 ライブラリは同じフォルダを参照していますが、リンク時のライブラリは異なります。 !!インクルード・リンク時の検索パスの指定 !デバッグ時 インクルードファイルが参照できるように、 wxWidgets2.6.2\include wxWidgets2.6.2\lib\vc_lib\mswd への検索パスを加えます。 また、リンクファイルが参照できるように、 リンカ部にて wxWidgets2.6.2\lib\vc_lib を加えます。 !リリース時 インクルードファイルが参照できるように、 wxWidgets2.6.2\include wxWidgets2.6.2\lib\vc_lib\msw への検索パスを加えます。「msw」である点に注意です。 リンクファイルが参照できるようにするのは、 デバッグ時と同じパスです。リンカ部にて wxWidgets2.6.2\lib\vc_lib を加えます。 !!リンクするライブラリ プロジェクトプロパティの「リンカ」-「入力」-「追加の依存ファイル」での リンクファイルの指定を行います。 !デバッグ版のリンクライブラリ 以下のファイルをリンカの入力に加えます。 wxmsw26d_core.lib wxbase26d.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexd.lib wxexpatd.lib winmm.lib comctl32.lib rpcrt4.lib wsock32.lib oleacc.lib odbc32.lib 「wx...'''d'''..lib」がwxWidgetsのデバッグ用ライブラリです。 !リリース版のリンクライブラリ 以下のファイルをリンカの入力に加えます。 wxmsw26_core.lib wxbase26.lib wxtiff.lib wxjpeg.lib wxpng.lib wxzlib.lib wxregex.lib wxexpat.lib winmm.lib comctl32.lib rpcrt4.lib wsock32.lib oleacc.lib odbc32.lib 「wx.....lib」がwxWidgetsのリリース用ライブラリです。 デバッグ版に比べて「d」が消えているのが分かりますでしょうか。 まだ設定は続きます。 !!コード生成時のランタイムライブラリ !デバッグ時 プロジェクトプロパティの「C/C++」-「コード生成」-「ランタイムライブラリ」 にて、「'''マルチスレッドデバッグDLL(/MDd)'''」を選択します。 !リリース時 プロジェクトプロパティの「C/C++」-「コード生成」-「ランタイムライブラリ」 にて、「'''マルチスレッドDLL(/MD)'''」を選択します。 これをきちんと指定しないとビルドエラーになるので注意です。 後は、実際のソースを記載するのみです。 これから先は、Windows/Linux/OSXでも同じ内容となります。 [[もっとも簡単なwxWidgetsのソース|helloworld_src_wxWidgets]]を参照してください。