X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/3602a62e83f979f1cce7cd207ddf23d4b75a5f3c..ad42b67c35ddcf8df2075ab582c9b64525756d09:/docs/msw/install.txt diff --git a/docs/msw/install.txt b/docs/msw/install.txt index 151ccac7de..7533beb565 100644 --- a/docs/msw/install.txt +++ b/docs/msw/install.txt @@ -135,6 +135,9 @@ Makefile notes: this manifested in unexpected link errors or warnings. This problem doesn't occur when using project files to build wxWindows. + To build Unicode versions of the libraries, add UNICODE=1 + to the nmake invocation ( default is UNICODE=0 ). + Note that the wxWindows core library allows you to have debug and release libraries available simultaneously, by compiling the objects in different subdirectories, whereas samples must be @@ -205,15 +208,23 @@ versions of the library and samples. Use the 'clean' target to clean all objects, libraries and executables. -Borland C++ 4.5/5.0 compilation +Borland C++ 4.5/5.0/5.5 compilation ------------------------------- Compiling using the makefiles: 0. If downloading from CVS, copy include\wx\msw\setup0.h to include\wx\setup.h. -1. Make sure your WXWIN variable is set, and uses the FAT (short - name) form if doing a 16-bit compile. +1. Make sure your WXWIN variable is set [e.g add + set WXWIN=c:\wxwindows + to your autoexec.bat file], and that it uses the FAT (short + name) form with no spaces. + Make sure your BCCDIR variable is set [e.g add + set BCCDIR=c:\progra~1\borland\bcc + to your autoexec.bat file], and that it points to the root directory of + your Borland C++ installation, and it uses the FAT (short + name) form with no spaces. + Reboot if needed for the changes to autoexec.bat to take effect. 2. Change directory to wx\src\msw. Type 'make -f makefile.b32' to make the wxWindows core library. Ignore the warnings about 'XXX' not found in library. @@ -255,16 +266,13 @@ you will therefore need to set wxUSE_LIBJPEG to 0 in setup.h and remove the jpeg target from src\msw\makefile.b32, and remove jpeg from src\makeprog.b32. -Note (6): If using C++Builder 4 and above (BC++ 5.4 and above), change LINK=tlink32 to -LINK=ilink32 in src\makeb32.env. You may also need to disable -wxUSE_LIBJPEG because there is a conflict in the BC++ headers -(actually this problem seems to have gone away with 5.5 and SP1). +Note (6): [obsolete] Note (7): If you wish debug messages to be sent to the console in debug mode, edit src\makeb32.env and change /aa to /Tpe in LINK_FLAGS. -Compiling using the IDE files: +Compiling using the IDE files: [Borland C++ 5.0, not Cbuilder] 1. Load src\bc32.ide (Release settings) 2. Go to Options|Project... and specify the correct BC++ include and lib path for @@ -293,78 +301,6 @@ release version is around 5 MB. See also the file docs/tech/tn0007.txt for further instructions and details of how to create your own project files. -Borland C++ 5.5 compilation ---------------------------- - -Before compiling wxWindows with Borland C++ 5.5, there are a few -issues concerning the compiler installation: - -1. The compiler must be installed to a path that does not contain - spaces, such as c:\Borland\Bcc55 (in particular, do not install - it below "C:\Program Files"). - -2. Make sure that you downloaded and installed the service pack 1 - for Borland C++ 5.5. This SP1 can be downloaded from: - http://www.borland.com/devsupport/bcppbuilder/patches/#freecompiler55 - - IMPORTANT: - When installing SP1, make sure that you extract (UnZip) the files - to the directory where you installed Borland C++ 5.5 (e.g., - c:\Borland\Bcc55) with the option "use folder names" selected. - This is necessary, to ensure that the files (mostly include files) - are extracted to the right directory. - -3. Create the following two files in the same directory where you - installed Borland C++ 5.5 (e.g., c:\Borland\Bcc55): - - a. bcc32.cfg - text file containing the following two lines: - -I"c:\Borland\Bcc55\include" - -L"c:\Borland\Bcc55\lib" - - b. ilink32.cfg - text file containing the following line: - -L"c:\Borland\Bcc55\lib" - - (replace c:\Borland\Bcc55 with the actual path where you installed - Borland C++ 5.5) - -4. Add the borland BIN directory to your path (e.g., c:\Borland\Bcc55\bin), - and define the environment variable BCCDIR= - (e.g., set BCCDIR=c:\Borland\Bcc55) - -Compiling wxWindows: - -Once the compiler and its service pack are properly installed, you build -wxWindows using the provided makefile.b32 in the src/msw directory: - -a. To build wxWindows in DEBUG mode: - - cd c:\wx2\src\msw - make -f makefile.b32 - - (replace c:\wx2 with the actual path where you installed wxWindows) - -b. To build wxWindows in RELEASE mode: - - cd c:\wx2\src\msw - make -f makefile.b32 FINAL=1 - - (if you had previously built wxWindows, you need to clean all of - the object and intermediate files. Before the above make command, - run: 'make -f makefile.b32 CLEANALL') - -IMPORTANT: -The Service Pack 1 for Borland C++ 5.5 must be installed before wxWindows -is compiled. If you compiled wxWindows before, it is advised that you -re-compile it following the next steps: - - cd c:\wx2\src\msw - make -f makefile.b32 CLEANALL - make -f makefile.b32 (or make -f makefile.b32 FINAL=1) - - (replace c:\wx2 with the actual path where you installed wxWindows) - ** REMEMBER ** In all of your wxWindows applications, your source code should include @@ -377,7 +313,7 @@ the following preprocessor directive: (check the samples -- e.g., \wx2\samples\minimal\minimal.cpp -- for more details) -Borland C++Builder compilation +Borland C++Builder IDE compilation ------------------------------ 1. Build the wxWindows libraries using the Borland make utility as @@ -388,6 +324,10 @@ Borland C++Builder compilation 2. You can build samples using the makefiles as per the instructions for BC++ above, or you can follow the instructions in docs/tech/tn0004.htm or http://biolpc22.york.ac.uk/wx/bc/ide.html. + You can use the process_sample_bcb.bat command which is in + wxwindows\distrib\msw to generate a .mak or .bpr file for most of the + samples [mak for Cbuilder 1-3; bpr for v4]. Execute this in the sample + directory, passing the name of the cpp files on the command line. Watcom C++ 10.6/11 compilation --------------------------- @@ -470,12 +410,15 @@ releases, and Mingw32. Thanks are due to Keith Garry Boyce (garp@opustel.com), Cygnus and others for making it all possible. -Both Cygwin and Mingw32 (the minimal distribution of Cygwin) can be used -with the same makefiles. +Both Cygwin and MinGW can be used with the same makefiles. + +NOTE: some notes specific to old Cygwin ( < 1.1.x ) + and MinGW ( < 1.0 ) are at the end of this section + ( see OLD VERSIONS ) Here are the steps required: -- Retrieve and install the latest beta of Cygwin, or Mingw32, as per the +- Retrieve and install the latest version of Cygwin, or Mingw32, as per the instructions with either of these packages. - If using Mingw32, you need some extra files to use the wxWindows @@ -487,49 +430,49 @@ Here are the steps required: These should be extracted to the Mingw32 directory. If you have already downloaded rm, cp, mv from elsewhere, you won't need this. - If using Mingw32 2.95 and below with wxWindows 2.1 or above, you - must hand-patch with Mingw32-gcc295.patches (located in the - top-level of the wxWindows 2 installation). Mingw32 2.95.2 - and above contain the fixes already. - -- Modify the file wx/src/cygnus.bat (or mingw32.bat or mingegcs.bat) - to set up appropriate variables, if necessary mounting drives. - Run it before compiling. - -- For Cygwin, make sure there's a \tmp directory on your - Windows drive or bison will crash (actually you don't need - bison for ordinary wxWindows compilation: a pre-generated .c file is - supplied). - -- Edit wx/src/makeg95.env and set the MINGW32 variable at the top of - the file to either 1 (you have Mingw32 or Cygwin 1.x releases) or 0 - (if you have Cygwin betas). If using Mingw32, also set the - MINGW32VERSION variable appropriately. - - Set your WXWIN variable to where wxWindows is installed. *** IMPORTANT: For Cygwin/Mingw32, use forward slashes in the path, not backslashes. - Use the makefile.g95 files for compiling wxWindows and samples, - e.g.: + e.g. to compile a debugging version of wxWindows: > cd c:\wx\src\msw > make -f makefile.g95 > cd c:\wx\samples\minimal > make -f makefile.g95 + to compile with optimizations: + > cd c:\wx\src\msw + > make -f makefile.g95 FINAL=1 + > cd c:\wx\samples\minimal + > make -f makefile.g95 FINAL=1 + + to compile a DLL: + > cd c:\wx\src\msw + > make -f makefile.g95 WXMAKINGDLL=1 + > cd c:\wx\samples\minimal + > make -f makefile.g95 WXUSINGDLL=1 + + to compile the Unicode version: + > cd c:\wx\src\msw + > make -f makefile.g95 UNICODE=1 + > cd c:\wx\samples\minimal + > make -f makefile.g95 UNICODE=1 + + Options can be combined ( e.g.: UNICODE=1 FINAL=1 ) + Ignore the warning about the default entry point. - Use the 'strip' command to reduce executable size. - With Cygwin, you can invoke gdb --nw myfile.exe to debug an executable. If there are memory leaks, they will be - flagged when the program quits. - -- If using GnuWin32 b18, you will need to copy windres.exe - from e.g. the Mingw32 distribution, to a directory in your path. + flagged when the program quits. You can use Cygwin gdb + to debug MinGW executables. All targets have 'clean' targets to allow removal of object files -and other intermediate compiler files. +and other intermediate compiler files and 'cleanall' targets to +allow removal of all object files and library files. Notes: @@ -571,10 +514,34 @@ Notes: and similarly for glu[32].def. +OLD VERSIONS: + +- If using Mingw32 2.95 and below with wxWindows 2.1 or above, you + must hand-patch with Mingw32-gcc295.patches (located in the + top-level of the wxWindows 2 installation). Mingw32 2.95.2 + and above contain the fixes already. + +- Modify the file wx/src/cygnus.bat (or mingw32.bat or mingegcs.bat) + to set up appropriate variables, if necessary mounting drives. + Run it before compiling. + +- For Cygwin, make sure there's a \tmp directory on your + Windows drive or bison will crash (actually you don't need + bison for ordinary wxWindows compilation: a pre-generated .c file is + supplied). + +- Edit wx/src/makeg95.env and set the MINGW32 variable at the top of + the file to either 1 (you have Mingw32 or Cygwin 1.x releases) or 0 + (if you have Cygwin betas). If using Mingw32, also set the + MINGW32VERSION variable appropriately. + +- If using GnuWin32 b18, you will need to copy windres.exe + from e.g. the Mingw32 distribution, to a directory in your path. + References: - The Cygwin site is at - http://sourceware.cygnus.com + http://sources.redhat.com/cygwin - Mingw32 is available at: ftp://www.mingw.org