Update Cygwin/MinGW build instructions.
Remove very out of date information, mention MinGW-w64 and extend Cygwin explanations. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@75021 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
parent
55987240d0
commit
99032b534e
@ -374,38 +374,35 @@ Note (4): wxUSE_STD_STRING is disabled in wx/string.h for Watcom as this
|
||||
Cygwin/MinGW Compilation
|
||||
----------------------------------------------------------------
|
||||
|
||||
wxWidgets supports Cygwin (formerly GnuWin32) betas and
|
||||
releases, and MinGW. Cygwin can be downloaded from:
|
||||
|
||||
http://sources.redhat.com/cygwin/
|
||||
|
||||
and MinGW from:
|
||||
wxWidgets supports Cygwin, MinGW and MinGW-w64 tool chains under Windows.
|
||||
They can be downloaded from:
|
||||
|
||||
http://www.cygwin.com/
|
||||
http://www.mingw.org/
|
||||
http://mingw-w64.sourceforge.net/
|
||||
|
||||
Both Cygwin and MinGW can be used with configure (assuming you have MSYS
|
||||
installed in case of MinGW). You will need new enough MinGW version, preferably
|
||||
MinGW 3.4.2+ (ships with gcc3).
|
||||
respectively. Please retrieve and install the latest version of your preferred
|
||||
tool chain by following the instructions provided by these packages. Notice
|
||||
that Cygwin includes both native Cygwin compiler, which produces binaries that
|
||||
require Cygwin during run-time, and MinGW[-w64] cross-compilers which can still
|
||||
be used in Cygwin environment themselves but produce plain Windows binaries
|
||||
without any special run-time requirements. You will probably want to use the
|
||||
latter for developing your applications.
|
||||
|
||||
NOTE: some notes specific to old Cygwin (< 1.1.x) are at the end of this
|
||||
section (see OLD VERSIONS)
|
||||
If using MinGW, you can download the add-on MSYS package to provide Unix-like
|
||||
tools that you'll need to build wxWidgets using configure.
|
||||
|
||||
There are two methods of compiling wxWidgets, by using the
|
||||
makefiles provided or by using 'configure'.
|
||||
|
||||
Retrieve and install the latest version of Cygwin, or MinGW, as per
|
||||
the instructions with either of these packages.
|
||||
|
||||
If using MinGW, you can download the add-on MSYS package to
|
||||
provide Unix-like tools that you'll need to build wxWidgets using configure.
|
||||
All of these tool chains can be used either with Unix-like configure+make build
|
||||
process (preferred) or with the provided makefile.gcc makefiles without using
|
||||
configure:
|
||||
|
||||
Using makefiles Directly
|
||||
----------------------------------------------------------------
|
||||
|
||||
NOTE: The makefile.gcc makefiles are for compilation under MinGW using
|
||||
Windows command interpreter (command.com/cmd.exe), they won't work in
|
||||
other environments (such as UNIX or Unix-like, e.g. MSYS where you have
|
||||
to use configure instead, see the section below)
|
||||
Windows command interpreter (command.com/cmd.exe), they won't work
|
||||
if you use Unix shell, as is the case with MSYS. Follow the instructions
|
||||
for using configure below instead in this case.
|
||||
|
||||
Use the makefile.gcc files for compiling wxWidgets and samples,
|
||||
e.g. to compile a debugging version of wxWidgets:
|
||||
@ -437,81 +434,16 @@ make a build directory, and run configure and make in this directory.
|
||||
|
||||
For example:
|
||||
|
||||
cd $WXWIN
|
||||
mkdir build-debug
|
||||
cd build-debug
|
||||
../configure --with-msw --enable-debug --enable-debug_gdb --disable-shared
|
||||
make
|
||||
make install % This step is optional, see note (6) below.
|
||||
cd samples/minimal
|
||||
make
|
||||
./minimal.exe
|
||||
|
||||
Notes:
|
||||
|
||||
1. See also the Cygwin/MinGW on the web site or CD-ROM for
|
||||
further information about using wxWidgets with these compilers.
|
||||
|
||||
2. libwx.a is 100 MB or more - but much less if compiled with no
|
||||
debug info (-g0) and level 4 optimization (-O4).
|
||||
|
||||
3. There's a bug in MinGW headers for some early distributions.
|
||||
|
||||
in include/windows32/defines.h, where it says:
|
||||
|
||||
#define LPSTR_TEXTCALLBACKA (LPSTR)-1L)
|
||||
|
||||
it should say:
|
||||
|
||||
#define LPSTR_TEXTCALLBACKA ((LPSTR)-1L)
|
||||
|
||||
(a missing bracket).
|
||||
|
||||
4. OpenGL support should work with MinGW as-is. However,
|
||||
if you wish to generate import libraries appropriate either for
|
||||
the MS OpenGL libraries or the SGI OpenGL libraries, go to
|
||||
include/wx/msw/gl and use:
|
||||
|
||||
dlltool -k -d opengl.def -llibopengl.a
|
||||
|
||||
for the SGI DLLs, or
|
||||
|
||||
dlltool -k -d opengl32.def -llibopengl32.a
|
||||
|
||||
and similarly for glu[32].def.
|
||||
|
||||
5. The 'make install' step is optional, and copies files
|
||||
as follows:
|
||||
|
||||
/usr/local/lib - wxmswXYZd.dll.a and wxmswXYZd.dll
|
||||
/usr/local/include/wx - wxWidgets header files
|
||||
/usr/local/bin - wx-config
|
||||
|
||||
You may need to do this if using wx-config with the
|
||||
default root path.
|
||||
|
||||
6. 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. You can use Cygwin gdb
|
||||
to debug MinGW executables.
|
||||
|
||||
7. Note that gcc's precompiled headers do not work on current versions of
|
||||
Cygwin. If your version of Cygwin is affected you will need to use the
|
||||
--disable-precomp-headers configure option.
|
||||
|
||||
OLD VERSIONS:
|
||||
|
||||
- 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 wxWidgets compilation: a pre-generated .c file is
|
||||
supplied).
|
||||
|
||||
- If using GnuWin32 b18, you will need to copy windres.exe
|
||||
from e.g. the MinGW distribution, to a directory in your path.
|
||||
$ cd $WXWIN
|
||||
$ mkdir build-debug
|
||||
$ cd build-debug
|
||||
$ # Optionally use --disable-shared for static linking
|
||||
$ ../configure --enable-debug
|
||||
$ make
|
||||
$ make install # This step is optional
|
||||
$ cd samples/minimal
|
||||
$ make
|
||||
$ ./minimal.exe
|
||||
|
||||
|
||||
DigitalMars C++ Compilation
|
||||
|
Loading…
Reference in New Issue
Block a user