1The freealut library 2===================== 3 4freealut is a free implementation of OpenAL's ALUT standard. See the file 5AUTHORS for the people involved. 6 7 8Building and installing on *nix-alikes using autotools 9====================================================== 10 11To build and run ALUT, you need an OpenAL somewhere (and a sound card, of course 12:-). If OpenAL is not installed in a standard place (let's say ${OPENAL_PREFIX}) 13you'll have to tell the build system about it: 14 15 CPPFLAGS="-I${OPENAL_PREFIX}/include" 16 LDFLAGS="-L${OPENAL_PREFIX}/lib" 17 export CPPFLAGS LDFLAGS 18 19If you install ALUT from the CVS repository, you'll have to call 20 21 ./autogen.sh 22 23first, this will generate some necessary files for building ALUT. 24 25If these initial preparations are done, you can simply run: 26 27 ./configure 28 make 29 make install 30 31The last step is optional and must be done as 'root', you can build and use the 32test programs in 'test_suite' and the example programs in 'examples' without 33installing ALUT. To build these, just go to the respective subdirectories and 34run 'make'. 35 36Alternatively, there is a spec file in the admin/RPM subdirectory, which can be 37used to build an RPM. 38 39 40Building with VisualStudio 41========================== 42 43The admin subdirectory contains VisualStudio6 and VisualStudioDotNET 44subdirectories, which contain a Visual Studio 6 workspace and a Visual Studio 45.NET solution, respectively. These expect the OpenAL SDK (header and import 46library) at the standard path "C:\Program Files\OpenAL 1.1 with EFX SDK". If 47this is not the case for your setup, you can change this either directly with a 48text editor in the project files (the only way for *real* men ;-) or via the 49project settings within Visual Studio. When everything is OK, just build 50e.g. the hello_world project and you should get the ALUT library itself and a 51demo with Steve Baker saying an immortal phrase. 52 53 54Building with CMake 55=================== 56 57The CMake build files are maintained by prakash@punnoor.de, so 58if you have troubles building Alut using CMake, please contact 59me and not the Alut devs, as the official build system is still 60the one using autotools. The CMake build files are currenty 61meant as an additional possibility to build Alut. 62 63The aim of using CMake is making portable development easier, as 64CMake containg generators for various build systems. On eg. Unix 65Makefiles will be built, and on Windows MS VC++ project files, if 66you wish. You can get CMake at cmake.org. 67 68Current status: 69The build system is feature complete, so it (should) build every- 70thing as the default one does. 71 72 73This document explains briefly how to build with CMake on Linux via out- 74of-tree build: 75 76- Change to the alut dir. 77- Create a dir, eg "default", and change into it. 78- Now (eg.) run: 79 80cmake .. -DCMAKE_INSTALL_PREFIX:STRING="/usr" -DCMAKE_C_FLAGS:STRING="-march=athlon-xp -O2" 81make 82make install 83 84 If you exported your CFLAGS, there is no need to specify them 85 explicitly, as CMake will pick them up. 86 87- OpenAL should get installed as you got used to it. 88 89 90I really would like to get CMake building Alut on every 91supported platform. So please contact me if it doesn't build 92on yours. I'll try to fix this with your help. 93 94 95Some Tips: 96 97- You can use a console GUI named ccmake for configuring cmake. 98 This also comes in handy, to find out about available options. 99 You can also set options via command-line: 100 101ccmake .. -DCMAKE_INSTALL_PREFIX:STRING="/usr" -DCMAKE_C_FLAGS:STRING="-march=athlon-xp -O2" 102 103 sets the two variables defined on command line and then starts 104 the GUI. Press 'c' the first time and every time you want to commit 105 changes in the config. Finally press 'g' to run the generator. 106 Btw, to set boolean vars from the command line, use -DVAR:BOOL=X, 107 where X is eg. ON or OFF. 108 109- If you want more output at compile time, use 110 111make VERBOSE=1 112 113- If you want to install to a different directory (using same prefix), 114 use 115 116make install DESTDIR=/foo/bar 117 118- CMake doesn't has a distclean target by default, so you better 119 really do an out-of-tree build, then you can simply delete its 120 content when you want a distclean... Furthermore it is easier to 121 have different builds using different parameters via out-of-tree 122 builds. 123 124- If you are interested in variables to set, take a look into 125 CMakeCache.txt after having run the configuring stage. 126 127- If you update your source tree via cvs and want to rebuild an pre- 128 viously built lib without cleaning, you better at least clear the 129 CMake cache (remove CMakeCache.txt) otherwise a modified CMake project 130 file could result to unwanted behaviour. 131 132 133Support 134======= 135 136Please don't email me the authors directly, sign up to the OpenAL user's mailing 137list. Instructions can be found here: 138 139 http://www.openal.org/ 140 141 142Licensing 143========= 144 145These libraries are offered as OpenSource freeware under the provisions of the 146GNU Library Public License (LGPL). Those terms and conditions are detailed in 147the file 'COPYING' in this directory. 148 149 150Portability and Dependencies 151============================ 152 153This library is designed to be easily portable (and more importantly so that 154programs using it can be UTTERLY portable). 155 156 157Compiling/Linking with ALUT 158=========================== 159 160In your source code, simply add: 161 162 #include <AL/alut.h> 163 164On *nix-alikes, use 165 166 openal-config --cflags 167 openal-config --libs 168 169to find out the compiler and linker flags needed for OpenAL, the flags needed 170for ALUT itself depend on the --prefix option given to configure. 171 172In a VisualStudio project, add the path to the ALUT header, import library and 173DLL to your project settings as usual. 174 175 176Directories 177=========== 178 179Within this distribution, you will find the following directories: 180 181admin -- Administrative files needed for building ALUT 182doc -- The ALUT documentation 183examples -- For application authors, here is a small collection of example 184 programs that you can use to get you started 185include -- The ALUT header 186src -- The source code for the ALUT library itself 187test_suite -- A small suite of test programs to check that ALUT is installed and 188 working correctly 189