Contents Up Previous Next

Makefiles

At the moment there is no attempt to make UNIX makefiles and PC makefiles compatible, i.e. one makefile is required for each environment.

Sample makefiles for UNIX (suffix .UNX), MS C++ (suffix .DOS and .NT), Borland C++ (.BCC) and Symantec C++ (.SC) are included for the library, demos and utilities. The NT, Borland and Symantec makefiles cannot be guaranteed to be up-to-date since the author does not have these compilers.

The controlling makefile for wxWindows is in the platform-specific directory, such as src/msw or src/x. This makefile will recursively execute the makefile in src/base.

Windows makefiles
UNIX makefiles


Windows makefiles

For Microsoft C++, normally it is only necessary to type nmake -f makefile.dos (or an alias or batch file which does this). By default, binaries are made with debugging information, and no optimization. Use FINAL=1 on the command line to remove debugging information (this only really necessary at the link stage), and DLL=1 to make a DLL version of the library, if building a library.


UNIX makefiles

All makefiles have the targets xview, motif and hp.

xview builds an Sun Open Look version of the library, motif builds a Sun Motif version, and hp builds a Motif version for HP workstations.

Remove object files, executables and libraries for the current module with the clean_ol and clean_motif and clean_hp targets.

It is possible to maintain simultaneous Motif and Open Look versions of an application, since object files are kept in separate directories (objects_ol and objects_motif).

Debugging information is included by default; you may add DEBUG= as an argument to make to compile without it, or use the UNIX strip command to remove debugging information from an executable.


Important note: Most compiler flags are kept centrally in src/make.env, which is included by all other makefiles. This is the file to edit to tailor wxWindows compilation to your environment.