Build Pianobar from Source on Raspberry Pi Raspbian

After getting the `TLS handshake Error` from pianobar on Raspberry Pi running Debian Wheezy ( aka Raspbian ) I decided to get the latest version of Pianobar. This requires building from sourcecode if you’re on the Wheezy release.

The `TLS handshake Error` can basically be translated to mean “the version of pianobar you’re using is too old” – this is an error that occurs regularly and the solution is always to update to the latest edge version. Packges for Raspbian / Wheezy aren’t going to get updates fast enough for this to be a good option (i.e. to not interrupt your listening ) so you’ll need to build from source.

One of the requirements is basically to have ffmpeg ( it the libraries from it ) installed. Several people will suggest installing `ffmpeg` from source – which you can do – but if you’re using a “Raspberry Pi model B” and not the latest Raspberry Pi 2.0 – or even if you are – it will take a long time to build `ffmpeg` from source – maybe 6 hours or more.

If you go this route, and you’re doing it via SSH make sure to use something like `screen` to keep the process from dying if you get disconnected.

I didn’t want to install ffmpeg and found a good alternative – install the libraries from the backports.

Here’s a script – which is basically my notes from along the way. It is sloppy and has some duplication – created from trial and error – but it worked for me and the duplicate packages is not an issue with apt-get ( if one of them is already installed it will be skipped)

So, run as root or with sudo. Good luck – report issues on the PromyLOPh github page, or leave a comment if you have any adjustments or tweaks or improvements to the script.

#!/bin/bash

# script from https://techblog.willshouse.com/?p=5564
# based on notes from:
# http://www.mobileread.com/forums/archive/index.php/t-224800.html

apt-get install -y debian-keyring debian-archive-keyring

if [[ “`grep -c wheezy-backports /etc/apt/sources.list`” -lt 1 ]]; then
echo deb http://ftp.us.debian.org/debian wheezy-backports main contrib non-free >> /etc/apt/sources.list
echo deb-src http://ftp.us.debian.org/debian wheezy-backports main contrib non-free >> /etc/apt/sources.list
fi

apt-get update

apt-get install -y git libao-dev libgcrypt11-dev libgnutls-dev libfaad-dev libmad0-dev libjson0-dev make pkg-config libevent-pthreads-2.0-5 libao-dev gnutls-dev libmad0-dev libfaad-dev libjson0-dev pkg-config git libao-dev libgcrypt11-dev libgnutls-dev libfaad-dev libmad0-dev libjson0-dev make pkg-config
apt-get install -y libgnutls28-dev
apt-get -t wheezy-backports install libavfilter-dev libavformat-dev libswscale-dev libavresample-dev -y
apt-get -t wheezy-backports install libavfilter-dev libavformat-dev libswscale-dev libavresample-dev libgnutls28-dev -y

apt-get install libavcodec-dev libavfilter-dev libavformat-dev alsa-utils -y

apt-get install -y alsa-utils

# may need to make sure this module is loaded at startup:
sudo modprobe snd_bcm2835

cd /usr/src
git clone https://github.com/PromyLOPh/pianobar.git
cd pianobar
make
make install

Related Posts:

This entry was posted in Software and tagged , . Bookmark the permalink.

One Response to Build Pianobar from Source on Raspberry Pi Raspbian

Leave a Reply

Your email address will not be published. Required fields are marked *