Category: Spotify

Fix Spotify incompatible libc after update on Debian GNU/Linux

Hello,

I recently updated my Debian desktop machine with Fluxbox as Window manager and noticed a Spotify update that actually broke my Spotify installation. You will get a error like this when you start Spotify from the commandline.

spotify: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by spotify)
spotify: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.14' not found (required by /opt/spotify/spotify-client/Data/libcef.so)
spotify: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.15' not found (required by /opt/spotify/spotify-client/Data/libcef.so)

I was looking for a solutions where I didn’t need to downgrade my libc version or re-install another version.
I found a interesting post on the Debian forums that solved the issue.

1. Download libc6_2.19-7_amd64.deb and patchelf_0.8-2_amd64.deb. You can find them here.

https://packages.debian.org/fi/sid/amd64/libc6/download
http://packages.ubuntu.com/cs/utopic/amd64/patchelf/download

I also have two mirrored deb files here:
libc6_2.19-7_amd64
patchelf_0.8-2_amd64

2. Create a bash script named install-spotify-libc.sh with the following content.

#!/bin/bash

LIBC_DIR=/usr/local/bin/spotify-libc

if [ $# != 2 ]; then
    echo "Usage: `basename $0` libc.deb patchelf.deb" >&2
    exit 1
fi

LIBC_DEB=$1
PATCHELF_DEB=$2
PATCHELF_DIR=`mktemp -d --tmpdir patchelf.XXXXXXXX`

LIBS="$LIBC_DIR/lib/x86_64-linux-gnu"
LDSO="$LIBS/ld-linux-x86-64.so.2"
PATCHELF="$PATCHELF_DIR/usr/bin/patchelf"

mkdir -p "$LIBC_DIR"
dpkg -x "$LIBC_DEB" "$LIBC_DIR"
dpkg -x "$PATCHELF_DEB" "$PATCHELF_DIR"

"$LDSO" --library-path "$LIBS" "$PATCHELF" --set-interpreter "$LDSO" /opt/spotify/spotify-client/spotify
"$LDSO" --library-path "$LIBS" "$PATCHELF" --set-interpreter "$LDSO" /opt/spotify/spotify-client/Data/SpotifyHelper

"$LDSO" --library-path "$LIBS" "$PATCHELF" --set-rpath "\$ORIGIN:\$ORIGIN/Data:$LIBS" /opt/spotify/spotify-client/spotify
"$LDSO" --library-path "$LIBS" "$PATCHELF" --set-rpath "\$ORIGIN:$LIBS" /opt/spotify/spotify-client/Data/SpotifyHelper

"$LDSO" --library-path "$LIBS" "$PATCHELF" --set-rpath "$LIBS" /opt/spotify/spotify-client/Data/libcef.so
"$LDSO" --library-path "$LIBS" "$PATCHELF" --set-rpath "$LIBS" /opt/spotify/spotify-client/Data/libffmpegsumo.so

rm -rf "$PATCHELF_DIR"

Give it execute permission.

chmod +x install-spotify-libc.sh

3. Run the script as root with the deb packages as arguments.

sudo ./install-spotify-libc.sh libc6_2.19-7_amd64.deb patchelf_0.8-2_amd64.deb

4. Start Spotify and it should work.

Thanks to cchip for this fixed posted in the Debian forums (this post).
You can read the whole thread here.

/Trigger