トップ 一覧 検索 ヘルプ ログイン

VC++ IDEでのwxWidgetsアプリケーションのコンパイルの変更点

  • 追加された行はこのように表示されます。
  • 削除された行はこのように表示されます。
VC++ 5.0または6.0 IDEを使用してwxWidgetsサンプルやアプリケーションをコンパイルするために(コンパイルされたwxWidgetsを提供されたメイクファイルやプロジェクトファイル)、以下の手順と設定が使用されるべきである。

プロジェクト設定に関するさらなる情報は、[Wiki|http://wiki.wxwidgets.org/]を参照のこと。

!!! 手順

+ 新規にWIN32アプリケーションプロジェクトを作成する。
+ プロジェクトに .cpp と .rc ファイルを追加する。
+ c:\wx2をwxWidgetsのインストールパスに置き換えて、プロジェクトに以下の設定を行う。

!!! wxWidgets 2での設定

これらの設定はwxWidgets 2.3.0以上に適用される。

以下のように明示的に設定を行うか、サンプル(例えば、minimal)をコピーすることによってプロジェクトを作成することができる。しかし、wxWidgetsインストールツリー外にコピーすると、全ての .dsp プロジェクトファイル内の "../.."と"..\.." を全てインストールディレクトリ、または$(WXWIN)に変更しなければならない。

::[一般]
:::[中間ファイル]と[出力ファイル]には、Debugコンフィギュレーションの場合にはDebugに、Releaseコンフィギュレーションの場合にはReleaseに変更する。

::[デバッグ]:[一般]
:::[デバッグセッションの実行可能ファイル]は、好きなパスに変更する。

::[C/C++]:[プリプロセッサ]
:::[プリプロセッサの定義]はDebug時には以下のシンボルを含んでいるべきである。:{{br}}
:::'''WIN32,_DEBUG,_WINDOWS,__WINDOWS__,__WXMSW__,__WXDEBUG__,WXDEBUG=1,__WIN95__,__WIN32__,WINVER=0x0400,STRICT'''{{br}}
:::'''WIN32,_DEBUG,_WINDOWS,_ _WINDOWS_ _,_ _WXMSW_ _,_ _WXDEBUG_ _,WXDEBUG=1,_ _WIN95_ _,_ _WIN32_ _,WINVER=0x0400,STRICT'''{{br}}
:::{{br}}
:::また、Release時には:{{br}}
:::'''NDEBUG,WIN32,_WINDOWS,__WINDOWS__,__WXMSW__,__WIN95__,__WIN32__,WINVER=0x0400,STRICT'''{{br}}
:::'''NDEBUG,WIN32,_WINDOWS,_ _WINDOWS_ _,_ _WXMSW_ _,_ _WIN95_ _,_ _WIN32_ _,WINVER=0x0400,STRICT'''{{br}}
:::{{br}}
:::[インクルードファイルのパス]には以下を含んでいるべきである。:{{br}}
:::c:\wx2\include,c:\wx2\contrib\include,c:\wx2\lib\msw[d]{{br}}
:::(そして、もちろん自身のプロジェクトで使用したい他のフォルダも指定すべきである)上記のc:\wx2の代わりに、$(WXWIN)を使用してもよい。

::[C/C++]:[プリコンパイル済みヘッダー]
:::[プリコンパイル済みヘッダーを使用しない]か、[プリコンパイル済みヘッダーを自動的に使用]が指定されるべきである。

::[C/C++]:[コード生成]
:::[使用するランタイムライブラリ]は、Debug時には"マルチスレッド(DLL、デバッグ)"、Release時には"マルチスレッド(DLL)"が選択されるべきである。

::[リンク]:[インプット]
:::[オブジェクト/ライブラリ モジュール]には、以下が設定されるべきである。{{br}}
:::{{br}}
:::Debugコンフィギュレーションの時:{{br}}
:::kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmswd.lib pngd.lib zlibd.lib jpegd.lib tiffd.lib{{br}}
:::{{br}}
:::Releaseコンフィギュレーションの時:{{br}}
:::kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib comctl32.lib rpcrt4.lib wsock32.lib winmm.lib wxmsw.lib png.lib zlib.lib jpeg.lib tiff.lib{{br}}
:::{{br}}
:::[無視するライブラリ]には、以下を設定すべきである。{{br}}
:::Debugコンフィギュレーションの時:{{br}}
:::libcd.lib,libcid.lib,msvcrt.lib{{br}}
:::{{br}}
:::Releaseコンフィギュレーションの時:{{br}}
:::libc.lib,libci.lib,msvcrtd.lib{{br}}
:::{{br}}
:::[追加ライブラリのパス]には、Debug、Releaseコンフィギュレーションのどちらにも、以下を設定すべきである。:{{br}}
:::c:\wx2\lib,c:\wx2\contrib\lib

::[リソース]
:::自身の .rc ファイルを選択する。[インクルードファイルのパス]には、以下を含めるべきである。:{{br}}
:::c:\wx2\include;c:\wx2\contrib\include

!!! Settings for wxWidgets 1.68
<<1.68は使用しないので、省略>>

Note: these have not yet been checked.

::Debug: General
:::The Executable for debug sessions field should be altered to be the path and name you'd expect (it may have generated a different name).

::General
:::The Output directories fields can be made blank if you want the objects and executable to be created in the project directory and not a subdirectory.

::C/C++: Preprocessor
:::The Preprocessor definitions field should contain the following symbols:

WIN32,_DEBUG,_WINDOWS,wx_msw,DEBUG=1,WIN95=1,WINVER=0x0400,STRICT

::The Additional include directories field should contain the following:

../../include/base,../../include/msw

(and of couse any other directories you wish to use in your project).

::C/C++: Precompiled Headers
:::The Not using precompiled headers or Automatic use of precompiled headers button should be selected (I can't find a way of using the wxWidgets PCH file).

::C/C++: Code Generation
:::The Use run-time library control should be set to Multithreaded DLL. This sets the compiler switch to /MD to match the wxWidgets makefile.

::Link: Input
:::The Object/library modules field should contain:

kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib
shell32.lib odbc32.lib odbccp32.lib comctl32.lib
../../lib/wx.lib ../../src/msw/dummy.obj

The Ignore libraries field should contain:

libcd.lib,libcid.lib

::Resources
:::Select your .rc file. The Additional resource include directories field should contain:

..\..\include\msw;..\..\contrib\fafa