web-dev-qa-db-fra.com

Comment installer gcc-4.8

J'ai vérifié la version de gcc sur mon système.

Il est actuellement à 4.6.3. J'ai lu que gcc-4.8 est sorti.

J'ai essayé les commandes suivantes sans succès:

Sudo apt-get install gcc (gcc is already the newest version)
Sudo apt-get install gcc-4.8 (unable to locate package)

Est-ce que quelqu'un sait comment installer ce paquet sur 12.04?

92
MdT

Est-ce que GCC-4.8 est disponible pour 12.04 Précis maintenant?

Mise à jour : Le 6/05/2013, une version de gcc 4.8.1 pour la version 12.04 (précise) est actuellement disponible à l'adresse https: //launchpad.net/~ubuntu-toolchain-r/+archive/test .

La réponse courte est: gcc-4.8 est actuellement disponible pour 12.04 (Précis) via la chaîne d’outils PPA ou par compilation de la source (voir ci-dessous pour plus de détails).

Annonce de publication

L'annonce pour la publication de gcc-4.8 a été faite le 22 mars, vous ne verrez probablement pas cela dans un répertoire officiel pour l'instant.

Cependant, il semble que Launchpad ait un PPA disponible pour les versions toolchain test qui inclut gcc-4.8, ici: https: //launchpad.net/~ubuntu-toolchain-r/+archive/test

Selon le changelog et la liste de paquets , il y a des debs pour i386, AMD64, arm et powerpc et ont été construits contre la version 13.04.

La dernière version disponible de gcc, pour 12.04, est la 4.8.1 et est disponible dans la chaîne d'outils PPA.

Ajout de la chaîne d'outils/test PPA:

Pour ajouter le PPA à votre système, ouvrez un terminal (Ctrl+Alt+t) et exécutez les commandes suivantes:

Sudo apt-get install python-software-properties
Sudo add-apt-repository ppa:ubuntu-toolchain-r/test
Sudo apt-get update
Sudo apt-get install gcc-4.8
Sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50

Vous serez également invité à installer un certain nombre de packages suggérés. Ces paquets sont recommandés, mais optionnels, pour l'installation de gcc-4.8.

Quelles fonctionnalités C++ sont disponibles dans gcc-4.8 et non disponibles dans gcc-4.7.2?

  • Selon GNU.ORG , gcc-4.7, prend en charge un certain nombre de/ C++ 11 caractéristiques .
  • A partir de la version gcc-4.8, gcc-4.7 ne supporte pas 8 fonctionnalités sur 64 (voir C++ 0x/C++ 11 Support dans GCC )

  • Ces fonctionnalités sont:

    Language Features
    - Rvalue references for *this
    - Generalized attributes
    - Alignment support
    - Inheriting constructors
    Concurreny
    - Bidirectional Fences
    - Memory model
    - Abandoning a process and at_quick_exit
    - Thread-local storage 
    
  • Pour une liste complète des changements dans gcc-4.8, voir le Changelist

J'ai besoin de ces fonctionnalités de gcc le 12.04 Précis, maintenant. Comment puis-je les obtenir?

Création de GCC-4.8 à partir de la source:

Si vous avez besoin de gcc-4.8 sur 12.04 maintenant, votre seule option est de le construire à partir de la source .

Veuillez lire le FAQ d'installation de GCC avant l'installation.

Vous pouvez télécharger gcc-4.8 à partir de sites miroirs de gnu.org ou directement à partir de leur serveur SVN .

Voici un exemple d’étapes pour compiler à partir de la source (voir ici pour plus de détails.) Notez qu’elles peuvent varier en fonction de votre système et de vos préférences.

  1. Téléchargez le code source

    • Créer un répertoire de construction (mkdir gcc-build && cd gcc-build)
    • Téléchargez le fichier source: wget http://www.netgull.com/gcc/releases/gcc-4.8.0/gcc-4.8.0.tar.bz2 (ajustez cette commande pour utiliser un site miroir approprié .
    • Décompressez le fichier (tar -xvjf <file name>)
  2. Installer des bibliothèques supplémentaires (Sudo apt-get install libgmp-dev libmpfr-dev libmpc-dev libc6-dev)

  3. Compilez la source: ./gcc-4.8.0/configure --prefix=/app/gcc/4.8.0
  4. Lancez make (Cela prendra un peu de temps. Allez faire du café ou préparez des biscuits. ;-))
  5. Installez le code: Sudo make install

Une fois ce processus terminé, exécutez la commande gcc --version pour vérifier que l'installation s'est correctement déroulée. Vous devriez voir quelque chose de similaire à la sortie suivante:

maggotbrain@foucault:~$ gcc --version
gcc (Linaro 4.8.0) 4.8.0
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

La ligne du bas: Merci à tous ces gens qui fournissent facile pour installer les backports Ubuntu pour vous. Donnez-leur certains des cookies que vous avez cuits lors de l'exécution de make. ;-)

118
Kevin Bowen

Donc, la réponse ci-dessus fonctionne, au moins pour une installation manuelle. Même après Sudo make install, l'exécution de gcc n'exécute toujours que la version stock 4.6.3. Même essayer gcc-4.8 ou gcc-4.8.0 ne fonctionne pas. Lancer /app/gcc/4.8.0/bin/gcc semble être la seule chose qui fonctionne pour moi. Je veux dire que c'est un peu nul, mais au moins ça marche.

1
user149393