Waave's MinGW installation instructions

We explain here how install or build the waave library on the MinGW environment. For cygwin user, see the standard unix installation. If you are cross compiling the library from linux to MinGW you will easily understand how to adapt the instructions.

1) Install MinGW

First install MinGW using the mingw-get installer : Go to the MinGW website and look at the documentation->getting_started section. Don't forget to select the MSYS and developer tools optionnals components.

We will assume that you have installed MinGW in the c:/MinGW/ directory. You can found the MSYS root in c:/MinGW/msys/1.0/ and your user home in c:/MinGW/msys/1.0/home/***.

2) Install sdl and ffmpeg development files.

First you need to understand that MinGW and MSYS each have their own include/ and lib/ directory.

By default, MinGW's gcc doesn't look at the MSYS folders. So we have two choices. We can install the development libraries on the MSYS folders and add each time the correct "-I.." and "-L.." flags. Or we can install them on the MinGW folders but we need to do each installation manually. See MinGW FAQ for more details. We will use the second method.

SDL development files

Donwload the SDL 1.2 mingw development library on the download page. Extract the files and copy the content of the SDL's include/ folder on c:/MinGW/include/ and the content of lib/ on c:/MinGW/lib/.

FFmpeg development files

Do the same thing with the MinGW FFmpeg development package. It can be found at the Zeranoe's page. Download the latest DEV build and install manually the include/ and lib/ files.

Install waave

Waave provide a precompiled version of the library that can be found here. You can just do the same thing than before. If you want to build the library yourself, see the corresponding section.

Using the MinGW waave library


To compile your program myprog.c use the command below. Note that we specify the path of the SDL headers with "c:/" because there are not installed in the MSYS directory.

user ~ $ gcc -Ic:/MinGW/include/SDL/ myprog.c -o myprog.exe -lmingw32 -lSDLmain -lSDL -lwaave


To distribute your program, give with the .exe file :

Building the library

To build the library on MinGW install the SDL and FFmpeg development files as specified in the installation instructions. Download and extract the waave's source code and configure the package :

user ~ $ tar -xvzf waave-**.tar.gz
user ~ $ cd waave-**
user ~ $ ./configure

Now make the library with the "-no-undefined" flags to build the shared library.

user ~ $ make LDFLAGS="-no-undefined"

To install the library in the MinGW folders we need to make the copy manually :

user ~ $ cp ./src/WAAVE.h c:/MinGW/include/
user ~ $ cp ./.libs/libwaave* c:/MinGW/lib/

See the previous section to know how to compile your programs.