The following is a suggested procedure for installing XO Wave. This should work on most systems, but you may have to customize it for your own system. Note that XO Wave currently only supports x86 based Linux systems. For late breaking bug info including possible work-arounds, please see our wiki: http://wiki.xowave.com/. First a few caveats: *) Because of a bug in Java, error dialogs often appear under other windows. If XO Wave seems unresponsive, be sure to check for hidden error messages and dismiss them. *) The Linux and FreeBSD versions of XO Wave are not as actively tested as the Mac OS X version, so you may experience more trouble than Mac OS X users. However, we are eager to fix any bugs that are reported. See our website for more details: http://www.xowave.com/. *) XO Wave uses PortAudio (www.portaudio.com) and we actively contribute to its development; however, there are still issues with ALSA/PortAudio playback. You will have to experiment with ALSA, Jack and OSS to see which works better for you. Installation: Note: To streamline this procedure and use the root account as little as possible, these instructions use the sudo command. If desired, you can of course run these commands as root instead of using sudo. 0) For XO Wave, we strongly encourage use of a 2.6 kernel, or a 2.4 kernel with low-latency patches and Native POSIX Threading Library support (this includes Red Hat 9 and Red Hat Enterprise 3.x or later). With a non-NPTL kernel, performance will be sub-optimal. 1) Establish a working Java 1.4 environment. Note that many distributions include gcj, which is an incomplete Java environment and insufficient for XO Wave. a) Confirm a java 1.4 executable is in your PATH. $ java -version java version "1.4.2-rc1" Java(TM) 2 Runtime Environment, Standard Edition (build Blackdown-1.4.2-rc1) Java HotSpot(TM) Client VM (build Blackdown-1.4.2-rc1, mixed mode) b) If not, you may need to update your PATH, or download and install a JVM from http://www.ibm.com/, http://www.blackdown.org/, http://www.java.com/, or http://www.java.sun.com/. Then log out and back in, and confirm that "which java" succeeds. 2) Make sure that XO Wave users have access to the sound devices, by setting appropriate permissions on /dev/dsp*. a) $ ls -l /dev/dsp* b) To use XO Wave with OSS, each user must have read/write access to /dev/dsp*. For multi-user systems, you may wish to create a new group "sound" which has read/write access to /dev/dsp*, and add XO Wave users to it. For single-user systems, you can may just change ownership of the dsp devices to your own account: $ sudo chown mylogin /dev/dsp* c) If your system has sound hardware, but the dsp* devices are missing, contact your Linux vendor for help. d) To use XO Wave with ALSA, be sure you have a working ALSA environment. NOTE: OSS emulated devices that show up under ALSA may not work properly. 3) Unpack the archive: $ tar xzf xowave-Linux-DATE.tgz 4) cd into the created directory: $ cd xowave-Linux-DATE 5) Run the installer (as root): $ sudo ./install.sh 6) Follow the installer's instructions. 7) Run XO Wave: $ /usr/local/xowave/bin/xowave 8) To make this more convenient, you can add java and xowave to your system's default PATH. First, see if it's necessary: $ which xowave If which shows the path to xowave, you're all set. If not, you can add xowave to the system's default PATH for sh/bash with: $ sudo sh -c "echo 'PATH=$PATH:/usr/local/xowave/bin' >> /etc/profile2" $ sudo sh -c "echo 'export PATH' >> /etc/profile" The equivalent for csh/tcsh would be: % sudo sh -c 'echo "setenv PATH $PATH\":/usr/local/xowave/bin\"" >> /etc/csh.login2' 9) Note that some graphical environments, such as KDE and GNOME, may take exclusive control of the audio hardware, preventing access by other programs, such as XO Wave. Current versions of these environments are friendlier to external sound software (like XO Wave), however, so these steps may not be necessary. KDE: Current versions of KDE include an option to manage the daemon automatically in Control Center:Sound And Multimedia:Sound System:General -- check the Auto Suspend box. Also check under the hardware tab that Full Duplex is not enabled, or else suspension may not work. GNOME: Current versions of GNOME should automatically use esd's auto-suspend feature, which is invoked with the -as flag. If necessary, you can simply kill your sound daemon before starting XO Wave: $ sudo killall artsd # for KDE users $ sudo killall esd # for GNOME users 10) If you get warnings about missing libraries, or discover later that you are missing libraries, you may need to contact your Linux vendor for assistance. However, here are some tips that may help: a) Some needed libraries can be found in /usr/local/xowave/lib b) Missing libraries may be included in a "compatibility", "development" or "LSB (Linux Standard Base)" package for your distribution. c) XO Wave is built using Debian Testing (Sarge). Some distributions may not have the needed libraries. Mandrake 10 users may need to install libstdc++2.10. If you have a particular problem with your distribution, or a tip that may be useful to others, please email us at . 11) Drag and Drop requires support from the underlying OS and the desktop environment. Currently, Java on Linux handles D&D with GTK-based software (such as GNOME applications and Nautilus), but not QT-based software (including KDE).