apt: relocation error: version GLIBCXX_3.4.21 not defined in file libstdc++.so.6 with link time reference
I had the same problem caused by issues from PPA for Ubuntu toolchain. My computer would not boot because of it. Following @w00kie's comment on his answer, I downloaded (from tty terminal) the debian of package libstdc++6
for Xenial
at link https://packages.ubuntu.com/xenial/libstdc++6 and installed using dpkg -i
. The computer works just fine now.
Steps
wget http://security.ubuntu.com/ubuntu/pool/main/g/gcc-5/libstdc++6_5.4.0-6ubuntu1~16.04.10_amd64.deb
sudo dpkg -i libstdc++6_5.4.0-6ubuntu1~16.04.10_amd64.deb
# I also found this helpful
sudo apt-get -f install
The culprit are left-overs from the PPA for Ubuntu Toolchain Uploads (restricted), specifically
/usr/lib/x86_64-linux-gnu/libstdc++.so.6.0.22
There are two possibilities of dealing with this:
You already have
ppa-purge
installed. Thensudo ppa-purge ppa:ubuntu-toolchain-r/test
fixes the issues.
Override the libstc++ by downloading libstdc++6 for Xenial and installing it via
dpkg -i
.
My comp failed to boot correctly because of this error. Apt-get was not working, nor was Gnome. This was immediatelly after an upgrade from 14.04 to 16.04. I solved it in tty by entering
sudo apt-add-repository --remove ppa:ubuntu-toolchain-r/test
At this point apt-get
started to work again and I was able to fix all isues from there:
sudo apt-get clean
sudo apt-get update
sudo apt-get install -f
sudo dpkg -a --configure
sudo apt-get dist-upgrade
I also had to uninstall Virtualbox (after the update command) and reinstal it later, but I think this was unrelated.