Home   Class/Enum List   File List   Compound Members  

Debugging & Compiling

Debugging

If you are having problems getting RtAudio to run on your system, make sure to pass a value of true to the RtAudio::showWarnings() function (this is the default setting). A variety of warning messages will be displayed which may help in determining the problem. Also, try using the programs included in the tests directory. The program audioprobe displays the queried capabilities of all hardware devices found for all APIs compiled. When using the ALSA and JACK APIs, further information can be displayed by defining the preprocessor definition RTAUDIO_DEBUG.

Compiling

In order to compile RtAudio for a specific OS and audio API, it is necessary to supply the appropriate preprocessor definition and library within the compiler statement:

OS: Audio API: C++ Class: Preprocessor Definition: Library or Framework: Example Compiler Statement:
Linux ALSA RtApiAlsa __LINUX_ALSA__ asound, pthread g++ -Wall -D__LINUX_ALSA__ -o audioprobe audioprobe.cpp RtAudio.cpp -lasound -lpthread
Linux PulseAudio RtApiPulse __LINUX_PULSE__ pthread g++ -Wall -D__LINUX_PULSE__ -o audioprobe audioprobe.cpp RtAudio.cpp -lpthread -lpulse-simple -lpulse
Linux OSS RtApiOss __LINUX_OSS__ pthread g++ -Wall -D__LINUX_OSS__ -o audioprobe audioprobe.cpp RtAudio.cpp -lpthread
Linux or Macintosh OS-X Jack Audio Server RtApiJack __UNIX_JACK__ jack, pthread

g++ -Wall -D__UNIX_JACK__ -o audioprobe audioprobe.cpp RtAudio.cpp $(pkg-config –cflags –libs jack) -lpthread

Macintosh OS-X CoreAudio RtApiCore __MACOSX_CORE__ pthread, CoreAudio g++ -Wall -D__MACOSX_CORE__ -o audioprobe audioprobe.cpp RtAudio.cpp -framework CoreAudio -lpthread
Windows Direct Sound RtApiDs __WINDOWS_DS__ dsound.lib (ver. 5.0 or higher), multithreaded MinGW: g++ -Wall -D__WINDOWS_DS__ -o audioprobe audioprobe.cpp RtAudio.cpp -lole32 -lwinmm -ldsound
Windows ASIO RtApiAsio __WINDOWS_ASIO__ various ASIO header and source files MinGW: g++ -Wall -D__WINDOWS_ASIO__ -Iinclude -o audioprobe audioprobe.cpp RtAudio.cpp asio.cpp asiolist.cpp asiodrivers.cpp iasiothiscallresolver.cpp -lole32
Windows WASAPI RtApiWasapi __WINDOWS_WASAPI__ MinGW: FunctionDiscoveryKeys_devpkey.h, lksuser, luuid, lwinmm, lole32 MinGW: g++ -Wall -D__WINDOWS_WASAPI__ -Iinclude -o audioprobe audioprobe.cpp RtAudio.cpp -lole32 -lwinmm -lksuser -luuid

The example compiler statements above could be used to compile the audioprobe.cpp example file, assuming that audioprobe.cpp, RtAudio.h, RtAudio.cpp and any other necessary files all exist in the same directory or the include directory.


©2001-2016 Gary P. Scavone, McGill University. All Rights Reserved.
Maintained by Gary P. Scavone.