266 votes

Comment choisir la version par défaut de gcc et g++?

Donc j'ai installé gcc-4.4 et gcc-4.3 (pareil pour g++). Maintenant, autant que je me souvienne, il y a un outil dans Ubuntu qui définit les liens symboliques pour vous si vous lui dites simplement quelle version vous voulez. Cependant, cela ne semble pas fonctionner dans la dernière version, ce que je trouve décevant.

root@nexus:~# update-alternatives --config gcc
update-alternatives: erreur: aucune alternative pour gcc.
root@nexus:~# update-alternatives --config cc
Il n'y a qu'une seule alternative dans le groupe de liens cc : /usr/bin/gcc
Rien à configurer.

root@nexus:~# dpkg -l | grep gcc | awk '{print $2}'
gcc
gcc-4.3
gcc-4.3-base
gcc-4.3-multilib
gcc-4.4
gcc-4.4-base
gcc-4.4-multilib
gcc-4.5-base
gcc-multilib
lib32gcc1
libgcc1

Des idées?

4voto

LC117 Points 41

J'avais l'intention de passer de gcc/g++ 9.x (qui était installé) à la version 10.x :

  1. Installer la nouvelle version souhaitée :
sudo apt install gcc-10
sudo apt install g++-10
  1. Passer à la nouvelle version :
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 10
sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-10 10
  1. Tester avec :
gcc --version
g++ --version

L'ancienne version est toujours installée au cas où vous auriez besoin de revenir en arrière, il suffit d'utiliser les commandes de l'étape 2. avec votre ancienne version !

1voto

dan richardson Points 1581

Que diriez-vous d'un lien symbolique dans un répertoire temporaire :

mkdir x && CHEMIN=$PWD/x:$CHEMIN && ln -s /usr/bin/g++-7 $PWD/x/g++

-1voto

Luis Eduardo Points 1

Vous pouvez utiliser la commande alternatives J'espère que cela aidera !

sudo apt install build-essential

sudo apt install gcc-8 g++-8 gcc-9 g++-9 gcc-10 g++-10

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-10 100 --slave /usr/bin/g++ g++ /usr/bin/g++-10 --slave /usr/bin/gcov gcov /usr/bin/gcov-10

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-9 90 --slave /usr/bin/g++ g++ /usr/bin/g++-9 --slave /usr/bin/gcov gcov /usr/bin/gcov-9

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 80 --slave /usr/bin/g++ g++ /usr/bin/g++-8 --slave /usr/bin/gcov gcov /usr/bin/gcov-8

sudo update-alternatives --config gcc

https://snipboard.io/zE4B9D.jpg

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X