diff --git a/docs/msw/install.md b/docs/msw/install.md index 69299088e0..51c6a3e910 100644 --- a/docs/msw/install.md +++ b/docs/msw/install.md @@ -82,7 +82,7 @@ Microsoft Visual C++ Compilation {#msw_build_msvs} > nmake /f makefile.vc BUILD=release SHARED=1 to build a release DLL version. Finally, you can also add - "TARGET_CPU=X64" to nmake command line to build Win64 versions + `TARGET_CPU=X64` to nmake command line to build Win64 versions (this only works if you are using a 64 bit compiler, of course). See "Configuring the Build" for more information about the @@ -101,7 +101,7 @@ Ready to use project files are provided for VC++ versions 7, 8, 9, 10, 11, 12, 14 and 15 (also known as MSVS 2003, 2005, 2008, 2010, 2012, 2013, 2015 and 2017 respectively). -Simply open wx_vcN.sln (for N=7, 8, 9, 10, 11, 12, 14, or 15) file, +Simply open `wx_vcN.sln` (for N=7, 8, 9, 10, 11, 12, 14, or 15) file, select the appropriate configuration (Debug or Release, static or DLL) and build the solution. Notice that when building a DLL configuration, you may need to perform the build several times because the projects @@ -112,11 +112,11 @@ errors. Simply do the build again, up to 3 times, to fix this. ### Special notes for Visual Studio 2010+ For Visual Studio 2010+ solutions it is possible to customize the build by -creating a wx_local.props file in the build\msw directory which is used, if it +creating a `wx_local.props` file in the build\msw directory which is used, if it exists, by the projects. The settings in that file override the default values for the properties such as wxCfg (corresponding to the CFG makefile variable described below) or wxVendor (corresponding to VENDOR). The typical way to -make the file is to copy wx_setup.props to wx_local.props and then edit local. +make the file is to copy `wx_setup.props` to `wx_local.props` and then edit local. For example, if you are building wxWidgets libraries using multiple versions of Visual Studio you could change wxCompilerPrefix to include the toolset: @@ -125,15 +125,15 @@ of Visual Studio you could change wxCompilerPrefix to include the toolset: + vc$(PlatformToolsetVersion) Following that example if you are using Visual Studio 2013 and open -wx_vc12.sln it will build using the "vc120" prefix for the build directories +`wx_vc12.sln` it will build using the "vc120" prefix for the build directories so to allow its build files to coexist with the files produced by the other MSVC versions. Keep in mind that by using a separate local props file you ensure that your changes won't be lost when updating to a future wxWidgets version. But if -wx_setup.props is updated in some later commit your wx_local.props is not -updated with it. For example the version information in wx_setup.props could -change and the information in your wx_local.props would be outdated. It is +`wx_setup.props` is updated in some later commit your `wx_local.props` is not +updated with it. For example the version information in `wx_setup.props` could +change and the information in your `wx_local.props` would be outdated. It is your responsibility to monitor for such situations. ### Improve debugging for Visual Studio 2012+ @@ -242,8 +242,8 @@ NOTE: The makefile.gcc makefiles are for compilation under MinGW using default static one. NOTE: For parallel builds, i.e. using -jN make option, please run - "mingw32-make -jN ... setup_h" first and then rerun the full - make command without "setup_h" at the end to work around a bug + `mingw32-make -jN ... setup_h` first and then rerun the full + make command without `setup_h` at the end to work around a bug in the current makefiles. 2. To verify your build, change the directory to samples\minimal and @@ -277,11 +277,11 @@ Compiling using the makefiles: 1. Change directory to build\msw. Type 'make -f makefile.bcc' to make the wxWidgets core library. Ignore the compiler warnings. - This produces a couple of libraries in the lib\bcc_lib directory. + This produces a couple of libraries in the `lib\bcc_lib` directory. 2. Change directory to a sample or demo such as samples\minimal, and type - 'make -f makefile.bcc'. This produces a windows exe file - by default - in the bcc_mswd subdirectory. + `make -f makefile.bcc`. This produces a windows exe file - by default + in the `bcc_mswd` subdirectory. Note (1): the wxWidgets makefiles assume dword structure alignment. Please make sure that your own project or makefile settings use the @@ -297,11 +297,11 @@ Using the Debugger and IDE in BDS or Turbo Explorer Doubleclick / open \%WXWIN\%\samples\minimal\borland.bdsproj. The current version is to be used with a dynamic build of wxWidgets-made by running make -f Makefile.bcc -DBUILD=debug -DSHARED=1 -in wxWidgets\build\msw. You also need the wxWidgets\lib\bcc_dll +in wxWidgets\build\msw. You also need the `wxWidgets\lib\bcc_dll` directory in your PATH. The debugger tracks your source and also traces into the wxWidgets sources. -To use this to debug other samples, copy the borland_ide.cpp +To use this to debug other samples, copy the `borland_ide.cpp` and borland.bdsproj files, then replace all occurrences of "minimal" with the name of the new project files @@ -373,19 +373,19 @@ depending on the compiler used. The full list of the build settings follows: -* BUILD=release +* `BUILD=release` Builds release version of the library. It differs from default 'debug' in lack of appended 'd' in name of library and uses the release CRT libraries instead of debug ones. Notice that even release builds do include debug - information by default, see DEBUG_FLAG for more information about it. + information by default, see `DEBUG_FLAG` for more information about it. -* SHARED=1 +* `SHARED=1` Build shared libraries (DLLs). By default, DLLs are not built (SHARED=0). -* UNICODE=0 +* `UNICODE=0` To completely disable Unicode support (default is UNICODE=1). It should not be necessary to do this. @@ -394,11 +394,11 @@ The full list of the build settings follows: Unicode build) and the directory where the library and setup.h are stored (ditto). -* WXUNIV=1 +* `WXUNIV=1` Build wxUniversal instead of native wxMSW -* MONOLITHIC=1 +* `MONOLITHIC=1` Starting with version 2.5.1, wxWidgets has the ability to be built as several smaller libraries instead of single big one as used to be the case @@ -406,32 +406,32 @@ The full list of the build settings follows: default behaviour of makefiles. You can still build single library ("monolithic build") by setting MONOLITHIC variable to 1. -* USE_GUI=0 +* `USE_GUI=0` Disable building GUI parts of the library, build only wxBase components used - by console applications. Note that if you leave USE_GUI=1 then both wxBase + by console applications. Note that if you leave `USE_GUI=1` then both wxBase and GUI libraries are built. -* USE_$LIBRARY=0 +* `USE_$LIBRARY=0` Do not build the corresponding library (all libraries are built by default). Library which can be disabled in this way are: AUI, HTML, - MEDIA, GL (the option name is USE_OPENGL for this one), PROPGRID, + MEDIA, GL (the option name is `USE_OPENGL` for this one), PROPGRID, QA, RIBBON, RICHTEXT, STC, WEBVIEW, XRC. -* RUNTIME_LIBS=static +* `RUNTIME_LIBS=static` Links static version of C and C++ runtime libraries into the executable, so that the program does not depend on DLLs provided with the compiler (e.g. Visual C++'s msvcrt.dll or Borland's cc3250mt.dll). Caution: Do not use static runtime libraries when building DLL (SHARED=1)! -* DEBUG_FLAG=0 -* DEBUG_FLAG=1 -* DEBUG_FLAG=2 +* `DEBUG_FLAG=0` +* `DEBUG_FLAG=1` +* `DEBUG_FLAG=2` Specifies the level of debug support in wxWidgets. Notice that - this is independent from both BUILD and DEBUG_INFO options. By default + this is independent from both BUILD and `DEBUG_INFO` options. By default always set to 1 meaning that debug support is enabled: asserts are compiled into the code (they are inactive by default in release builds of the application but can be enabled), wxLogDebug() and wxLogTrace() are available @@ -440,15 +440,15 @@ The full list of the build settings follows: consuming assertions and checks which are deemed to be unsuitable for production environment. -* DEBUG_INFO=0 -* DEBUG_INFO=1 +* `DEBUG_INFO=0` +* `DEBUG_INFO=1` This option affects whether debugging information is generated. If omitted or set to 'default' its value is determined the value of the BUILD option. -* DEBUG_RUNTIME_LIBS=0 -* DEBUG_RUNTIME_LIBS=1 +* `DEBUG_RUNTIME_LIBS=0` +* `DEBUG_RUNTIME_LIBS=1` (VC++ only.) If set to 1, msvcrtd.dll is used, if to 0, msvcrt.dll is used. By default msvcrtd.dll is used only if the executable @@ -458,36 +458,36 @@ The full list of the build settings follows: usable .pdb files with debug information) and this setting makes it possible. -* TARGET_CPU=X64|ARM64|IA64 +* `TARGET_CPU=X64|ARM64|IA64` (VC++ only.) Set this variable to build for x86_64 systems. If unset, x86 build is performed. -* VENDOR=\ +* `VENDOR=` Set this to a short string identifying your company if you are planning to distribute wxWidgets DLLs with your application. Default value is 'custom'. This string is included as part of DLL name. wxWidgets DLLs contain compiler name, version information and vendor name in them. For example - wxmsw311u_core_vc_custom.dll is one of DLLs build using Visual C++ with + `wxmsw311u_core_vc_custom.dll` is one of DLLs build using Visual C++ with default settings. If you set VENDOR=mycorp, the name will change to - wxmsw311u_core_vc_mycorp.dll. + `wxmsw311u_core_vc_mycorp.dll.` -* CFG=\ +* `CFG=` Sets configuration name so that you can have multiple wxWidgets builds with different setup.h settings coexisting in same tree. The value of this option is appended to the build directories names. This is useful for building the library in some non-default configuration, - e.g. you could change wxUSE_STL to 1 in \%WXWIN\%\include\wx\msw\setup.h and - then build with "CFG=-stl". Alternatively, you could build with e.g. - "RUNTIME_LIBS=static CFG=-mt" when using MSVC. + e.g. you could change `wxUSE_STL` to 1 in `\%WXWIN\%\include\wx\msw\setup.h` and + then build with `CFG=-stl`. Alternatively, you could build with e.g. + `RUNTIME_LIBS=static CFG=-mt` when using MSVC. -* COMPILER_PREFIX=\ +* `COMPILER_PREFIX=` If you build with multiple versions of the same compiler, you can put - their outputs into directories like "vc6_lib", "vc8_lib" etc. instead of - "vc_lib" by setting this variable to e.g. "vc6". This is merely a + their outputs into directories like `vc6_lib`, `vc8_lib` etc. instead of + `vc_lib` by setting this variable to e.g. `vc6`. This is merely a convenience variable, you can achieve the same effect (but different directory names) with the CFG option. @@ -517,15 +517,15 @@ Otherwise follow the instructions below for "manual" setup of your project. We suppose that wxWidgets sources are under the directory `$WXWIN` (notice that different tool chains refer to environment variables such as WXWIN in different ways, e.g. MSVC users should use `$``(WXWIN)` instead of just -`$WXWIN`). And we will use \ as a shortcut for the subdirectory of +`$WXWIN`). And we will use `` as a shortcut for the subdirectory of `$WXWIN\lib` which is composed from several parts separated by underscore: first, a compiler-specific prefix (e.g. "vc" for MSVC, "gcc" for g++ or the -value of COMPILER_PREFIX if you set it explicitly), then optional "x64" if +value of `COMPILER_PREFIX` if you set it explicitly), then optional "x64" if building in 64 bits and finally either "lib" or "dll" depending on whether static or dynamic wx libraries are being used. -For example, WXWIN could be "c:\wxWidgets\3.4.5" and \ could be -"c:\wxWidgets\3.4.5\lib\vc_x64_lib" for 64-bit static libraries built with +For example, WXWIN could be "c:\wxWidgets\3.4.5" and `` could be +`c:\wxWidgets\3.4.5\lib\vc_x64_lib` for 64-bit static libraries built with MSVC. Here is what you need to do: @@ -535,7 +535,7 @@ Here is what you need to do: - resource compiler include paths. * If using MSVC, prepend `$WXWIN\include\msvc` to the include paths too. - Otherwise, append \\mswu[d] to the include paths, where "d" should + Otherwise, append `\mswu[d]` to the include paths, where "d" should be used for debug builds only. * Define the following symbols for the preprocessor: - `__WXMSW__` to ensure you use the correct wxWidgets port. @@ -544,7 +544,7 @@ Here is what you need to do: - `WXUSINGDLL` if you are using DLL build of wxWidgets. * If using MSVC 7 only (i.e. not for later versions), also define `wxUSE_RC_MANIFEST=1` and `WX_CPU_X86`. -* Add \ directory described above to the libraries path. +* Add `` directory described above to the libraries path. When using MSVC, the libraries are linked automatically using "#pragma comment(lib)" feature of this compiler. With all the other compilers you also @@ -553,9 +553,9 @@ need to: * Add the list of libraries to link with to the linker input. The exact list depends on which libraries you use and whether you built wxWidgets in monolithic or default multlib mode and basically should include all the - relevant libraries from the directory above, e.g. "wxmsw31ud_core.lib + relevant libraries from the directory above, e.g. `wxmsw31ud_core.lib wxbase31ud.lib wxtiffd.lib wxjpegd.lib wxpngd.lib wxzlibd.lib wxregexud.lib - wxexpatd.lib" for a debug build of an application using the core library only + wxexpatd.lib` for a debug build of an application using the core library only (all wxWidgets applications use the base library).