libXpm (see comments in the Notes section below) if you want to have
XPM support in wxWindows (recommended).
-- You now have the option of using the configure-based system, or the simple
- makefile system.
+- You can now use configure to build wxWindows and the samples.
Using configure is the recommended way to build the library. If it doesn't
work for you for whatever reason, please report it (together with detailed
information about your platform and the (relevant part of) contents of
- config.log file) to wxwin-developers@wx.dent.med.uni-muenchen.de.
+ config.log file) to wx-dev@lists.wxwindows.org.
+
COMPILING USING CONFIGURE
=========================
./configure options
If you want to use system's C and C++ compiler,
-set environment variables CC and CCC as
+set environment variables CXX and CC as
% setenv CC cc
- % setenv CCC CC
+ % setenv CXX CC
% ./configure options
to see all the options please use:
Using this way, a make file for the minimal sample would look
like this
-CC = g++
+CXX = g++
minimal: minimal.o
- $(CC) -o minimal minimal.o `wx-config --libs`
+ $(CXX) -o minimal minimal.o `wx-config --libs`
minimal.o: minimal.cpp mondrian.xpm
- $(CC) `wx-config --cflags` -c minimal.cpp -o minimal.o
+ $(CXX) `wx-config --cflags` -c minimal.cpp -o minimal.o
clean:
rm -f *.o minimal
This script will build wxMotif using shared libraries. If you want to build
a static wxWindows library, use --disable-shared.
-COMPILING USING MAKEFILES
-=========================
-
-- Copy the file include/wx/motif/setup0.h to include/wx/motif/setup.h and
- edit it if you wish to enable/disable some library features
-
-- Choose a .env file from src/makeenvs that matches your
- environment, and copy it to src/make.env. These are the
- settings read by wxWindows for Motif makefiles.
-
-- Edit src/make.env to change options according to your local
- environment. In particular, change WXDIR to where wxWindows is
- found on your system, or set the WXWIN environment variable
- before compilation, e.g.:
-
- export WXWIN=/home/jacs/wx2
-
- Please feel free to contribute settings files for your environment.
-
-- Change directory to src/motif and type:
-
- make -f makefile.unx motif
-
- This should make the library libwx_motif.a in the lib
- directory. Note that this makefile system does not build shared
- libraries, only static ones (that is, the wxWindows library will be
- linked statically; to see remaining dependencies on shared libraries,
- type e.g. ldd minimal_motif).
-
-- Make a sample, such as the minimal sample:
-
- cd samples/minimal
- make -f makefile.unx motif
-
- and run the resulting minimal_motif binary.
-
Troubleshooting
---------------
-- If you have trouble compiling the file y_tab.c, or have strange
- linking errors, check whether you're using a C or C++ compiler for this file.
- You should specify a C compiler in the CCLEX variable in src/make.env.
- You could also try using bison and flex instead of yacc and
- lex.
-
- Solaris compilation with gcc: if the compiler has problems with the variable argument
functions, try putting the gcc fixinclude file paths early in the include
path.
possible temporary workaround (comment out the final
XtDestroyWidget from ~wxWindow in window.cpp).
-- If you use flex and bison instead of yacc and lex, you may need
- to change the relevant part of src/motif/makefile.unx to read:
-
- ../common/y_tab.c: ../common/parser.y
- $(YACC) ../common/parser.y
- mv ../common/parser.tab.c ../common/y_tab.c
-
- (the 'mv' command needs to be changed)
-
- Some compilers, such as Sun C++, may give a lot of warnings about
virtual functions being hidden. Please ignore these, it's correct C++ syntax.
If you find any incorrect instances, though, such as a
and --with-debug_info to --without-debug_info in the makewxmotif
script).
-- Some classes can be switched off in include/wx/motif/setup.h,
- if you are having trouble with a particular file. However,
- I'd prefer you to fix the problem and send the fix to me :-) or at
- least let me know about it.
-
-- Thread support is switched off by default in setup.h (wxUSE_THREADS)
- because standard Unices often do not have the necessary thread library
- installed. Please see ../docs/gtk/install.txt for more details on this.
- The systems for which thread support is known to work are Linux with libc6
- (a.k.a. glibc2), Solaris 2.5 and 2.6 (provided that X libraries are thread
- safe) and, to some extent, FreeBSD 2.8 and 3.1 (any feedback on thread
- support under FreeBSD as well as the systems not mentioned here would be
- appreciated).
-
-- If you run into problems with a missing X11/Xpm.h header, you
- need to install the XPM package. It can be obtained from:
-
- ftp://ftp.x.org/contrib/libraries/xpm-3.4k.tar.gz
- http://sunfreeware.com
-
- You may need to modify make.env to add -I and -L options pointing to where Xpm
- is installed and possibly change bitmap.cpp to
- include <xpm.h> instead of <X11/xpm.h>
-
- Alternatively, edit include/wx/motif/setup.h, set wxUSE_XPM
- to 0, and recompile. You will not be able to load any XPMs,
- though (currently the only supported colour bitmap format).
-
Bug reports
-----------
Please send bug reports with a description of your environment,
compiler and the error message(s) to the wxwin-developers mailing list at:
- wxwin-developers@wx.dent.med.uni-muenchen.de
+ wx-dev@lists.wxwindows.org
Julian Smart, Robert Roebling and Vadim Zeitlin, November 1999.