Howto: Compile Pulseaudio from git

To compile Pulseaudio from git, you need to follow this few steps.

1) First we will need to install some dependencies (deps in the rest of the text). So, open terminal and paste this:

Code:
sudo apt-get build-dep pulseaudio && sudo apt-get install checkinstall git libpulse-dev

1.1) This should install all the deps you need to compile pulseaudio. If there is some missing deps after configure (step 4), then open Synaptic and find -dev package of the missing lib.

2) Now we will get pulseaudio from git repo:

Code:
git clone git://anongit.freedesktop.org/pulseaudio/pulseaudio

3) Go into new pulseaudio directory where the source code is:

Code:
cd pulseaudio

4) Now paste this into terminal:

Code:
./autogen.sh

– And when that is finished, then paste this:
4.1)

Code:
CFLAGS="-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -Wall" CXXFLAGS="-g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Wformat-security -Werror=format-security -Wall" CPPFLAGS="-D_FORTIFY_SOURCE=2" LDFLAGS="-Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,--no-as-needed -lxcb" $HOME/pulseaudio/./configure --build=x86_64-linux-gnu  --prefix=/usr --includedir="\${prefix}/include" --mandir="\${prefix}/share/man" --infodir="\${prefix}/share/info" --sysconfdir=/etc --localstatedir=/var --libexecdir="\${prefix}/lib/pulseaudio" --srcdir=. --disable-maintainer-mode --disable-dependency-tracking --disable-silent-rules   --enable-x11 --disable-hal --libdir=\${prefix}/lib/x86_64-linux-gnu --with-module-dir=\${prefix}/lib/pulse-5.0/modules --disable-oss-wrapper

If this finishes without any error, you can continue with step 5, but if there is an error of missing deps, then follow 1.1 step.

5) Now we initiate a compile:

Code:
make -jX

Clarification: The X in “-jX” is a number of CPU cores your computer has +1. So if you have 4 cores CPU you use -j5, and if that CPU has Hyper-threading, then it would be -j9. I hope you get the picture.  🙂

If all goes well, next step will be installing:

6)

Code:
sudo make install

6.1) This step is optional. It will create a .deb file, and install it.
[code]sudo checkinstall[code]

– The first thing you will get is this question:

Code:
Should I create a default set of package docs?  [y]:

Answer it with [n] ( just press letter n )

– Next will be some warning, just ignore it and press ENTER
– Now you have few options to pick.
– Press number 1 and ENTER – in there write something like “pulseaudio from git” and press ENTER.
– Now press number 3 and ENTER – there you will write a version like this: 6:6.0 and press ENTER again.
– Now you can continue with creating a .deb package – so press ENTER.
– Wait for it to finish, and now you have created and install .deb package of new pulseaudio you compiled.

7) Now you can go to some system monitor and kill pulseaudio process, so the new version starts, or you can just logout and log back in.