以下省略!

タイダルウ(ry ほぼ毎日1記事執筆運動実施中。 ※記事に広告(アフィリエイト)リンクを掲載している場合があります。

Ubuntu 14.04においてGCC 4.9でビルドされているプログラムが起動しない場合の対処法

f:id:abyssluke:20160221073327p:plain:w200:leftUbuntu 14.04 LTSの公式レポジトリで配布されているFileZillaはバージョンが古いので、FileZillaの公式サイトで配布されているバイナリ(公式バイナリ)をダウンロード、インストールして動かしてみたところ以下のようなエラーが出て動かない。それをなんとかする方法のメモ。

インストール、そしてエラー内容

$ tar xjvf FileZilla_3.15.0.2_x86_64-linux-gnu.tar.bz2
$ cd FileZilla3
$ sudo cp bin/* /usr/local/bin/
$ sudo cp -r share/* /usr/share/
$ filezilla 
filezilla: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `CXXABI_1.3.8' not found (required by filezilla)
filezilla: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.20' not found (required by filezilla)

対処法

調べてみるとどうやらDebianGCC 4.9でビルドされているらしく、Ubuntu標準のlibstdc++では動かない模様。なのでPPA(Ubuntu公式)を追加し新しいlibstdc++にアップデートする。念の為gcc-4.9,g++-4.9もインストール。

$ sudo add-apt-repository ppa:ubuntu-toolchain-r/test
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install gcc-4.9 g++-4.9

ちなみに

ppa:ubuntu-toolchain-r/testではGCC 5も配布されている。