Comment installer g ++ 4.9 sur Debian Stretch

8

J'ai essayé d'installer sur mon Debian strench g ++ - 4.9 et je n'ai pas trouvé de paquet via

apt-cache search g++-4.9

La version la plus ancienne, je n'ai trouvé que g ++ - 5

Où puis-je obtenir g ++ - 4.9?

Levin
la source
Vous pouvez essayer de reconstruire les sources jessie pour 4.9 sur stretch. Étant donné que 4.9 est la valeur par défaut pour Jessie, cela devrait être possible. Si vous souhaitez étoffer cette réponse ou si vous souhaitez plus d'informations, faites-le moi savoir. Vous voulez certainement tester cela sur une machine virtuelle ou similaire. Pas sur un système de travail réel.
Faheem Mitha

Réponses:

3

Je l'ai fait fonctionner (très maladroit) en ajoutant jessie repo puis en l'installant. Inclure dans /etc/apt/sources.list:

deb http://ftp.us.debian.org/debian/ jessie main contrib non-free
deb-src http://ftp.us.debian.org/debian/ jessie main contrib non-free

Faire la mise à jour apt-get && installer apt-get g ++ - 4.9

Après l'installation, commentez les lignes de Jessie pour qu'elles n'entrent pas en conflit plus tard avec Stretch. Cela aurait été bien mieux si Debian avait inclus d'autres versions de g ++. Curieusement, nous avons de nombreuses versions de gcc incluses mais une seule version de g ++ (6.0).

kakrafoon
la source
Cela a fonctionné pour moi après avoir désinstallé la version extensible de gcc-4.9 avec apt purge gcc-4.9 gcc-4.9-base
nathan
1
Vous ne devriez vraiment pas faire quelque chose comme ça. Cela cassera Debian. Lire wiki.debian.org/DontBreakDebian
user3728501
3

Cela fonctionne pour debian10.3 sans aucun conflit de paquet .

#!/bin/bash
set -xe

BASE_URL=http://ftp.us.debian.org/debian/pool/main/
PACKAGES=$(cat <<-END
g/gcc-4.9/cpp-4.9_4.9.2-10%2Bdeb8u1_amd64.deb
g/gcc-4.9/g%2B%2B-4.9_4.9.2-10%2Bdeb8u1_amd64.deb
g/gcc-4.9/gcc-4.9-base_4.9.2-10%2Bdeb8u1_amd64.deb
g/gcc-4.9/gcc-4.9_4.9.2-10%2Bdeb8u1_amd64.deb
g/gcc-4.9/libgcc-4.9-dev_4.9.2-10%2Bdeb8u1_amd64.deb
g/gcc-4.9/libasan1_4.9.2-10%2Bdeb8u1_amd64.deb
g/gcc-4.9/libubsan0_4.9.2-10%2Bdeb8u1_amd64.deb
g/gcc-4.9/libcilkrts5_4.9.2-10%2Bdeb8u1_amd64.deb
g/gcc-4.9/libstdc%2B%2B-4.9-dev_4.9.2-10%2Bdeb8u1_amd64.deb
m/mpfr4/libmpfr4_3.1.5-1_amd64.deb
c/cloog/libcloog-isl4_0.18.4-1+b1_amd64.deb
i/isl/libisl10_0.12.2-2_amd64.deb
i/isl/libisl15_0.18-1_amd64.deb
END
)

mkdir -p ./downloads/gcc4.9
cd ./downloads/gcc4.9

while IFS= read -r package; do
    wget -c $BASE_URL$package
done <<< "$PACKAGES"

apt-get install multiarch-support
dpkg -i ./downloads/gcc4.9/*.deb
Victor Gavro
la source
2

http://ftp.us.debian.org/debian/pool/main/g/gcc-4.9/

Notez la réponse utile suivante: https://askubuntu.com/a/428199/456089

Au lieu de cela, téléchargez simplement tous ces éléments:

binutils_2.25-5_amd64.deb
cpp_4.9.2-2_amd64.deb
g++_4.9.2-2_amd64.deb
gcc_4.9.2-2_amd64.deb
gcc-4.9-base_4.9.2-10_amd64.deb
libasan1_4.9.2-10_amd64.deb
libatomic1_4.9.2-10_amd64.deb
libcilkrts5_4.9.2-10_amd64.deb
libgcc1_4.9.2-10_amd64.deb
libgcc-4.9-dev_4.9.2-10_amd64.deb
libgomp1_4.9.2-10_amd64.deb
libitm1_4.9.2-10_amd64.deb
liblsan0_4.9.2-10_amd64.deb 
libmpfr4_3.1.2-2_amd64.deb
libquadmath0_4.9.2-10_amd64.deb
libstdc++-4.9-dev_4.9.2-10_amd64.deb
libstdc++6
libtsan0_4.9.2-10_amd64.deb
libubsan0_4.9.2-10_amd64.deb

Depuis les serveurs de Debian, par exemple:

http://ftp.us.debian.org/debian/pool/main/b/binutils/binutils_2.25-5_amd64.deb

Ensuite, installez-les, par exemple: $ for package in * .deb; do sudo dpkg --install "$ package"; terminé

Notez que vous pouvez rencontrer des problèmes de dépendances, vous devez donc utiliser aussi peu de packages de cette liste que possible.

Lizardx
la source