web-dev-qa-db-ja.com

「gcc --version」は、g ++-5とgcc-5がインストールされていてもgccを見つけることができませんか?

C++ 14のサポートが必要なため、gcc-5が必要です。そこで、以前のバージョンのgccを削除しました。 gcc-4.8およびgcc-4.9およびインストール済みのgcc-5およびg ++-5。ただし、コマンドgcc --versionが応答する場合:

The program 'gcc' is currently not installed. You can install it by typing:
Sudo apt-get install gcc

一方、Sudo apt-get install gcc-5をコマンドすると、gcc-5 is already the newest versionという応答が返されます。ただし、Sudo apt-get install gccコマンドを実行すると、常にgcc-4.8を取得しようとします。

なぜこの振る舞いですか?コマンドSudo apt-get install gccのときにgcc-5を取得するにはどうすればよいですか。

ありがとう。

2
the_naive

何をしているのかわからない限り、テストPPAからライブラリを更新するのは悪いことです。

現在のapt-repositoriesで利用可能なバージョン5.xのgccプログラムがないため、gcc --versionに対する応答がありません。パッケージマネージャー(ここではapt)は、同じプログラムに対して異なるバージョン4.xと5.xの2つの異なるパッケージを維持しています。

gcc-5と入力すると、gccで定義されたリポジトリのリストからSudo apt-get install gccではなく、aptという名前のパッケージを取得しようとするため、gcc-5を取得できません。代わりに、gcc-5を取得してからgccに置き換えるか、~/.bashrcファイルのエイリアスを置き換えることをお勧めします。

Gcc-5をgccに置き換えたい場合は、この Gist リンクを試してください。または主に

Sudo add-apt-repository ppa:ubuntu-toolchain-r/test
Sudo apt-get update
Sudo apt-get install gcc-5 g++-5

Sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-5 60 --slave /usr/bin/g++ g++ /usr/bin/g++-5

less Recommendedオプションは追加することです

alias gcc='gcc-5

あなたの中に~/.bashrc。端末から使用する場合はgcc-5を使用し、gccへの他の呼び出しはgcc-5をトリガーしません。

1
radbrawler