next up previous contents
Next: Troubleshooting Up: Overflow User's Manual Previous: Extending Overflow   Contents

Subsections

Compiling and Installing

What you need

Compilation flags

If you are using gcc, you can control optimization with the CFLAGS and CXXFLAGS environment variables. For use on a Pentium III or an Athlon XP, we suggest to set both CFLAGS and CXXFLAGS to: '-O3 -march=pentiumpro -D_ENABLE_SSE'. For T-bird Athlon, we suggest replacing -D_ENABLE_SSE by -D_ENABLE_3DNOW. This must be done before running configure. Also, note that the default flags used if CFLAGS and CXXFLAGS are not set are '-O2 -g'. It is strongly recommended not to compile Overflow with -g unless you're really desperate, as the binaries might take up to 600 MB of disk space (instead of 6-10 MB otherwise) due to the C++ name mangling.

Configure options

Compiling & Installing the software

To compile, type:

% ./configure -disable-static -prefix=<your install directory>

% make

% make install

Notes:

You can now start the Overflow environment by typing :

% vflow (assuming <overflow prefix>/bin is in your path)

Compiling on Win32

Some parts of Overflow (sorry, no GUI yet!) have been ported to Win32 (w/ MSVC++). Using the code generation feature (the "Build" button on the toolbar), it is now possible to compile an overflow application on Windows. Note that this has not been fully tested yet.

One important thing to note with MSVC++ (version 6.0) is that it is a very buggy compiler, mostly when it comes to templates. For example, it does not support template partial specialization and it chokes on a lot of valid template code (static template member functions, pointer to template functions, ...). For this reasons some Overflow features need to be switched off.

So here are the settings you need for Overflow. First, you need to turn on RTTI (which is not enabled by default). Also, I suggest you turn the warnings off. The preprocessor flags (define) you need to set are: BROKEN_TEMPLATES, HAVE_FLOAT_H, NO_HASH_MAP, STUPID_COMPLEX_KLUDGE and (if not already defined), WIN32.


next up previous contents
Next: Troubleshooting Up: Overflow User's Manual Previous: Extending Overflow   Contents
Jean-Marc Valin 2002-06-17