Debianサーバーにgccコンパイラアップデートをインストールするために多くのソリューションを試しました。それらのどれも仕事がありません。 C++11 の新機能を使用するには、コンパイラのアップデートが必要です。これは、安定したlibcxx11 ABIとC ++ 11の信頼性の高いサポートを提供するためです(参照:ここ)。特に、現在コンパイラgccバージョン4.9.2(Debian 4.9.2-10)に含まれていないバージョンの「GLIBCXX_3.4.21」をインポートしています。
解決策に関するいくつかのアドバイスが役に立ちます。よろしくお願いします。
私が試した私の問題に関するいくつかのフォーラムへのリンク:
1 2 サム(完全に関連するソリューションはUbuntuでは動作しませんが、Debianのftpサーバーでgcc-5を見つけることができません)
答え1
Debian jessieにGCC 5+をインストールする必要があり、Debianテスト(少なくとも6月16日)にはapt-pinningを使用してそこに利用可能なパッケージをインストールできます(参照)https://wiki.debian.org/AptPreferences)。
Debian jessie でテストするために apt-pinning を使用して GCC 5+ をインストールするには:
/etc/apt/sources.list.d
次の行を含むディレクトリにファイルを作成して、適切なソースにDebianテストストアを追加します。deb http://ftp.us.debian.org/debian testing main contrib non-free
/etc/apt/preferences.d
次の内容を含むファイルを作成して、Debian に特定のパッケージでテストソースを使用するように指示します。Package: * Pin: release a=testing Pin-Priority: 100
適切なデータベースの更新:
sudo apt-get update
テストからgccをインストールします。
sudo apt-get install -t testing gcc
を使用すると、
-t testing
apt-getは以前に設定したテストソースからgccをインストールするように指示します。
ソースコードを再コンパイルする前に、すべてのコンパイルをクリーンアップし、すべての依存関係を再コンパイルすることをお勧めします。
楽しくお過ごしください!
答え2
2017年2月19日からgcc-5削除済みテストでは:
https://tracker.debian.org/pkg/gcc-5
apt-get install gcc-5
この行をルートとして最初に実行すると、次のことができます。
echo "deb http://ftp.us.debian.org/debian unstable main contrib non-free" > /etc/apt/sources.list.d/unstable.list
/etc/apt/preferences.d
その後、lleknの回答に従ってそのソースの優先順位を変更できます。
答え3
前の2つの答えを1つの実際の答えにまとめるには:
echo "deb http://ftp.us.debian.org/debian unstable main contrib non-free" >> /etc/apt/sources.list.d/unstable.list
apt-get update
apt-get install -t unstable gcc-5
しかし! ! ! stableからパッケージをインストールするときにこの機能を使用する責任はユーザー自身にあります。/etc/apt/sources.list.d/unstable.list
パッケージをインストールした後に削除することもできます。
可能であれば、オペレーティングシステムを混乱させないようにDockerの下にインストールしてください。旅行費用は変更されることがあります。
答え4
gcc-5
Debian 10.13 "buster"のUbuntuリポジトリからインストールできました。これは非常に悪いアプローチですが、選択肢はありません。
以下はコマンドです(CIフレンドリー)。
apt-get remove -y gcc
echo "deb http://us.archive.ubuntu.com/ubuntu/ xenial main" >> /etc/apt/sources.list.d/buster.list
echo "deb http://us.archive.ubuntu.com/ubuntu/ xenial universe" >> /etc/apt/sources.list.d/buster.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5 3B4FE6ACC0B21F32
apt-get update
apt-get install -y gcc-5 g++-5
ln -s /usr/bin/gcc-5 /usr/bin/gcc
ln -s /usr/bin/g++-5 /usr/bin/g++