Comment installer GCC 4.7 sur Precise?

14

La dernière version de GCC dans les archives Precise est 4.6.3. Cependant, GCC 4.7 ajoute la prise en charge de certaines fonctionnalités C ++ 11 plus récentes (comme la délégation de constructeurs). Les archives de paquets de Quantal ont GCC 4.7.2 disponible.

Est-il possible d'installer GCC 4.7 sur Precise? Mieux encore, existe-t-il un moyen facile de prendre une version plus récente d'un package dans une version et de la rétroporter vers une version plus ancienne?

Nathan Osman
la source

Réponses:

16

J'ai créé un PPA qui contient une version de GCC 4.7 for Precise ici:

ppa: george-edison55 / gcc4.7-preciseLogo Launchpad ( Cliquez ici pour des instructions sur l'utilisation des PPA. )


Pour rétroporter un package d'une version à une autre est un processus relativement simple en supposant que vous avez un compte Launchpad et que vous y avez enregistré votre clé GPG.

Assurez-vous que le package ubuntu-dev-tools estInstallez ubuntu-dev-tools installé:

sudo apt-get install ubuntu-dev-tools

La syntaxe pour exécuter la commande backport ressemble à ceci:

backportpackage -s [new_release] -d [old_release] -u [ppa] [package_name]

La commande ci-dessus rétroportera [package_name]de [new_release]à [old_release]et la téléchargera [ppa]. Notez que dans ce cas particulier, vous devrez non seulement rétroporter, gcc-4.7mais aussi gcj-4.7et gcc-defaults dans cet ordre .

Nathan Osman
la source
1
difficile de croire que c'est aussi simple que ça \ 0 /
tshepang
1

Un moyen un peu plus simple consiste à simplement utiliser le PPA de builds de test de l' équipe Ubuntu Toolchain Uploaders (restreint) , qui a des builds Toolchain (y compris gcc, etc.) de chaînes d'outils plus récentes dans les versions plus anciennes. Le lien ci-dessus montre les packages Precise, mais ils compilent des choses.

Les versions disponibles incluent gcc 4.7, 4.8, 4.9 et 5, bien que je n'ai testé que 4.7.

Vous pouvez toujours rétroporter vos propres paquets gcc et autres, mais cela peut toujours prendre du temps.

Thomas Ward
la source