Wednesday, October 28, 2009

libffado

I have found that in order to build the packages that I had originally intended, i.e. JACK and Ardour, than I would need to package several others during this process. Notably, I needed to build the FFADO driver (libffado).

To this end, I first created a created under my /home directory called /build. Not very imaginative I admit.
mkdir build

This will be the main directory where other directories will be stored for the various applications and their respective source packages to be stored.

Next, I moved into the build directory and created another directory for libffado. Move into the new directory also.
cd build
mkdir libffado
cd libffado

Then I downloaded the source package.
apt-get source libffado

Under the /libffado directory that I created this created a /libffado-2.0~rc1 directory, a libffado_2.0~rc1.orig.tar.gz archived package, a libffado_2.0~rc1-0ubuntu2.diff.gz archived package and a libffado_2.0~rc1-0ubuntu2.dsc file.

The directory is for the source files, the orig.tar.gz is the original tarball from upstream, the diff.gz is a tarball of the differences between the original and the Ubuntu built pacakge and the .dsc file is a description file.

Okay, now comes the really hard part; running prevu. First we need to change directory to the source code directory and then type:
cd libffado-2.0~rc1
prevu

That's it, watch it work. It might be a while though.

If everything works well you will be told that you have a .deb file located under the /var/cache/prevu/hardy-debs directory. Of course, this is for Hardy 8.04.

Next I will be moving onto libcelt-dev because JACK requires it as a build-depends. This will provide the capability for Hardy users to use netjack if they build the CELT codec, which is a low latency codec for sending audio over the net.

The decision to build libcelt-dev was slightly difficult for me because of my general ignorance of package building. It was either build CELT also or remove it as a build-depends but then I would have jacked with the changelog and then had to change the version number of JACK and I decided that it would be simpler (hopefully) just to build CELT before building JACK. I suppose we shall find out.

0 comments:

Post a Comment