web-dev-qa-db-fra.com

Comment installer gcc 4.7?

Je souhaite installer gcc 4.7 pour pouvoir utiliser certaines fonctionnalités de c ++ 11.

J'ai téléchargé le code source, lancé ./configure et on m'a dit que j'avais besoin de GMP. Téléchargé le code pour cela, tapez ./configure et on me dit que j'avais besoin de m4. Mais j'ai déjà m4 (c'est ce que me dit le synamptique).

Qu'est-ce qui se passe et comment puis-je résoudre ce problème?

50
soandos

Vous pouvez essayer ceci PPA pour installer gcc 4.7. Notez qu'il a des paquets uniquement pour 12.04 et non pour 11.10.

Exécutez les commandes suivantes dans un terminal:

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

Ou, si vous préférez une méthode graphique d’installation d’un PPA, jetez un œil à Que sont les PPA et comment les utiliser? .

61
jokerdino

NOTE !!

Vous devez également probablement vous occuper de g ++ - 4.7

La liste complète des commandes sera donc:

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

De plus, n'oubliez pas de mettre à jour les alternatives, comme suggéré ici

Sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.6 60 --slave /usr/bin/g++ g++ /usr/bin/g++-4.6 
Sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.7 40 --slave /usr/bin/g++ g++ /usr/bin/g++-4.7 
Sudo update-alternatives --config gcc

Ceci est confirmé pour fonctionner dans Ubuntu 12.04

30
user109764

C’est un guide complet sur la construction depuis les sources de gcc-4.7 sur Ubuntu 12.04 64 bits:

http://solarianprogrammer.com/2012/04/13/building-gcc-4-7-on-ubuntu-12-04/

0
mmisu

Recherchez dans le répertoire de construction les fichiers config.log et recherchez le message d'erreur dans ceux-ci. Cela devrait donner des indices.

En passant, si vous n’avez pas besoin de la version 4.7 avec précision, vous pouvez essayer d’installer le paquet gcc-snapshot. Cela devrait avoir les fonctionnalités dont vous avez besoin. Cependant, si je me souviens bien, il n'est pas installé à la place standard.

0
ams