Next Previous Table of Contents
Of course the most convenient method of getting aRts installed is to use a binary package. Basically, your linux distribution should ship with one, and if it doesn't, complain ;). SuSE linux for instance does.
However, there is a solution when you have a distribution that doesn't come with aRts, and you desperately want a binary package anyway, perhaps because you can't get the sources compiled, or the results don't work at all. Starting with aRts 0.3.3, there will be a static binary available at the aRts homepage. The advantage of this is that the static binary should run on almost any linux, regardless of the distribution, kernel, or libraries. But it is about 8 Megs large, so if you find another way of getting aRts installed, use that.
The following section will however be focused on the classic installation from source.
The best thing is to go to the aRts homepage at http://linux.twc.de/arts, and then download it from there (or mirrors). Another possibility is to look at ftp://ftp.kde.org/pub/kde/unstable/apps/multimedia/sound for a recent arts-x.y.z.tgz archive.
Arts is developed in the KDE CVS in the module kmusic. So if you have
access to that, simply use cvs checkout kmusic
and you have the
latest version.
You can also get snapshots when you don't have CVS access using cvsup. The detailed procedure is documented at http://www.kde.org.
Currently it is only tested to compile and run with the following software (higher versions are allowed ;) installed on your computer:
IMPORTANT!! You must compile mico with --disable-mini-stl !! Otherwise you can't build aRts
Mico-2.2.6 has a bug in the idl compiler which leads to incorrect reference counting. Arts will work with it, but probably the server will not terminate when there is no ArtsBuilder left, and perhaps some memoryleak might occur - so if you can avoid it, use a newer mico version.
(From soundtracker readme, which has the same problem): This program makes extensive use of threads. This can be troublesome if you are using a libc5 system. You need thread-safe X libraries in this case. If ArtsBuilder keeps crashing as soon as you start it (with strange X I/O errors), you don't have them.
You can get a precompiled version from
http://www.tu-harburg.de/~semk2104/soundtracker/threadedxlibs.tar.bz2
It's best not to install them over the old X libraries, but to put them into a private directory instead and to let the shell environment in bash:
export LD_LIBRARY_PATH=/path/to/threadedxlibs/directory
in csh/tcsh:
setenv LD_LIBRARY_PATH /path/to/threadedxlibs/directory
It also has been reported that compiling against qt-1.42 helped one user of a libc5 system who couldn't get aRts running with qt-1.44. It would be good if somebody could confirm/debug that.
Libaudiofile ships with a broken header file (with unbalanced brackets when __cplusplus is defined), which leads to the error
error: wav.cc: h:21 parse error before '}'
when trying to compile the wav-support in src/synthesizer. What you can do against that is:
#ifdef __cplusplus } #endif
I suppose you should be able to use the software if you have gcc-2.7.x or gcc-2.8.x as well, but it is possible that you have to tune the configure stuff a little. (Report me, if you don't get it installed what goes wrong, I should be able to help you).
If you are using a non-GNU-compiler, you need at least good STL support. When you can build Mico and KDE with it, you should probably also be able to build aRts with it.
For other operating systems you need to provide another sound driver. Usually it should be possible to take the corresponding source from mpeg3play version 0.9.6 (the sound support of the synthesizer is based on their routines, see README.sound for details) and add realtime capabilities.
This has only been done for linux so far. Anyway, some people reported that aRts also runs under FreeBSD.
Well, you can build arts without KDE and Qt. Use
configure --disable-kde
This will omit building artsbuilder (the visual editor for synthesis structures). Arts is not really fun without that though.
If you really want to do that, I recommend to read the section Porting below, and start a new GUI, for instance with
If you are using a CVS snapshot, start with
make -f Makefile.dist
./configure
make
make install
The synthesizer requires realtime priority to work nice. There are three possibilities:
cd /usr/local/kde/bin chown root artsserver.bin chmod u+s artsserver.bin
If you start artsserver manually as root, you will be able to use artsbuilder with the appropriate realtime config (you can then start artsbuider as user).
This is not so nice, because you'll hear that the sound produces clicks and breaks as you use the GUI.
Now you can start artsbuilder. Under KDE, the application should appear under the multimedia section of your K-menu (Arts Builder). If it's not there yet, you can try to restart your panel.
And now, you should be able to play with it.
Next Previous Table of Contents