This page is now obsolete. The content has been re-structured and extended and is now available as InstallingFfadoFromSource.
Compiling FFADO and Jack
It's very easy:
- get ffado SVN.
- compile it: $ scons PREFIX=/your/prefix/here DEBUG=1
- install it: $ scons install
Testing the installation
$ cd libffado $ tests/test-ffado Discover
- get jackd SVN
- prepare it:
$ sh autogen.sh
- configure the build
$ ./configure --prefix=/your/prefix/herecheck for the line:
| Build with new FireWire (FFADO) support............... : trueif it says 'false' libffado was not found by the jack configure step which means it wasn't installed correctly
- build jack
- install jack
$ make installagain, run as root
run jack with the 'firewire' backend:
$ jackd -R -d firewire
note that the -h option gives help:
'jackd -h' for help on jackd in general
'jackd -d firewire -h' for help on the firewire backend
the -vX (X=0 to 7) controls the verbosity of ffado. for initial tests you might want to run with -v5:
$ jackd -R -d firewire -v5
If you report errors, you have to use a DEBUG=1 build and use -v6. You can capture the debug output as follows:
$ jackd -R -d firewire -v6 2> log
The -R option to jack specifies realtime thread priority operation, and is absolutely essential. If you have a badly configured system you might not have the permission to run jack in realtime mode. Please google on how to solve this (hint: jack limits.conf).
A second note is that on some distributions you have to make sure your user has permission to access the /dev/raw1394 device. You also have to make sure the raw1394 module is loaded.
google, the FreeBoB site, the FFADO development site and the FFADO main site are your friends. Altough some of that documentation can be outdated and some trial and error might be needed. If you find outdated documentation please report it to the maintainers (us for freebob and ffado sites). On the FFADO development wiki you can edit stuff yourself if you login with the username you create on the main FFADO site. Please contribute, even if you're not 100% sure about something (you can always mention you're not sure).