
Compiling Applications in Visual C++
To compile wxWidgets samples and applications using the VC++ 5.0 or 6.0 IDE
(having compiled wxWidgets using the makefile or project file provided), the
following steps and settings should be used.
See also the wxWiki pages for
further information on project settings.
Steps
- Create a new WIN32 Application project.
- Add the .cpp and .rc files for your project.
- Apply the settings listed below to the project, replacing c:\wx2 with
your wxWidgets installation path.
Settings for wxWidgets 2
These settings apply to wxWidgets 2.3.0 and above.
You can set them explicitly as follows, or you can create a project by
copying a sample, e.g. minimal. However, if you copy it out of the wxWidgets
installation tree then you will have to replace all "../.." and "..\.." in the
.dsp project file with the path to the installation, or $(WXWIN).
- General
- The Output files and Intermediate files directory fields
should be Debug for the Debug configuration, and Release for the Release
configuration.
- 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).
- C/C++: Preprocessor
- The Preprocessor definitions field should contain the following
symbols for Debug:
WIN32,_DEBUG,_WINDOWS,__WINDOWS__,__WXMSW__,__WXDEBUG__,WXDEBUG=1,
__WIN95__,__WIN32__,WINVER=0x0400,STRICT
and these for Release:
NDEBUG,WIN32,_WINDOWS,__WINDOWS__,__WXMSW__,__WIN95__,
__WIN32__,WINVER=0x0400,STRICT
The Additional include directories field should contain the
following:
c:\wx2\include,c:\wx2\contrib\include,c:\wx2\lib\msw[d]
(and of couse any other directories you wish to use in your project).
You could use $(WXWIN) instead of c:\wx2 above.
- C/C++: Precompiled Headers
- The Not using precompiled headers or Automatic use of
precompiled headers button should be selected.
- C/C++: Code Generation
- The Use run-time library control should be set to Debug
Multithreaded DLL (Debug) or Multithreaded DLL (Release).
- Link: Input
- The Object/library modules field should contain:
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
for the static Debug configuration and
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
for the static Release configuration.
The Ignore libraries field should contain:
libcd.lib,libcid.lib,msvcrt.lib
for the Debug configuration and
libc.lib,libci.lib,msvcrtd.lib
for the Release configuration.
The Additional library path field should contain:
c:\wx2\lib,c:\wx2\contrib\lib
for both Debug and Release configurations.
- Resources
- Select your .rc file and the Resources tab. The Additional resource
include directories field should contain:
c:\wx2\include;c:\wx2\contrib\include