Cómo instalar GCC 5 en Debian Jessie 8.1

Cómo instalar GCC 5 en Debian Jessie 8.1

Probé muchas soluciones para instalar la actualización de mi compilador gcc en el servidor Debian. Ninguno de ellos funcionó. Necesito la actualización del compilador para usar nuevas características de c++11, ya que esto proporciona una ABI de libcxx11 estable y soporte estable para C++11 (consulteaquí). Específicamente obteniendo la versión `GLIBCXX_3.4.21' que no está incluida en mi compilador actual gcc versión 4.9.2 (Debian 4.9.2-10).

Algunos consejos para la solución serán útiles. Gracias de antemano.

Algunos enlaces al foro relacionado con mi problema que ya probé:

1 2 3(La solución no completamente relacionada es para ubuntu, pero todavía no pude encontrar gcc-5 en el servidor ftp de Debian)

Respuesta1

Necesitaba GCC 5+ instalado en Debian Jessie y, como está disponible para las pruebas de Debian (al menos el 16 de junio), puedes usar apt-pinning para instalar los paquetes disponibles allí (verhttps://wiki.debian.org/AptPreferences).

Para instalar GCC 5+ desde la prueba en Debian jessie usando apt-pinning:

  1. Agregue el repositorio de pruebas de Debian a sus fuentes apt creando un archivo en el directorio /etc/apt/sources.list.dque contiene la línea

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

  2. Indique a Debian que utilice fuentes de prueba en ciertos paquetes creando un archivo que /etc/apt/preferences.dcontenga lo siguiente:

    Package: *
    Pin: release a=testing
    Pin-Priority: 100
    
  3. Actualizar la base de datos de apt:sudo apt-get update

  4. Instale gcc desde la prueba:sudo apt-get install -t testing gcc

    Tenga en cuenta que al utilizar -t testingle indica a apt-get que instale gcc desde fuentes de prueba como se configuró anteriormente.

Le recomiendo encarecidamente limpiar cualquier compilación y volver a compilar cualquier dependencia antes de volver a compilar sus fuentes.

¡Divertirse!

Respuesta2

A partir del 19 de febrero de 2017, gcc-5 ha sidoremotode las pruebas:

https://tracker.debian.org/pkg/gcc-5

Puedes hacerlo apt-get install gcc-5si primero ejecutas esta línea como root:

echo "deb http://ftp.us.debian.org/debian unstable main contrib non-free" > /etc/apt/sources.list.d/unstable.list

Entonces, probablemente querrás cambiar la prioridad de esa fuente /etc/apt/preferences.dsegún la respuesta de Llekn.

Respuesta3

Para combinar las 2 respuestas anteriores en una que funcione:

echo "deb http://ftp.us.debian.org/debian unstable main contrib non-free" >> /etc/apt/sources.list.d/unstable.list
apt-get update
apt-get install -t unstable gcc-5

¡¡¡PERO!!! Utilice esto bajo su propio riesgo ya que está instalando paquetes desde inestable. Es posible que también desee eliminarlos /etc/apt/sources.list.d/unstable.listuna vez que haya instalado los paquetes.

Si es posible, instálelo en Docker para no estropear su sistema operativo. Su experiencia puede ser diferente.

Respuesta4

Pude instalar gcc-5desde los repositorios de Ubuntu en Debian 10.13 "buster". Es una muy mala práctica pero no tenía otra opción.

Aquí están los comandos (compatibles con CI)

apt-get remove -y gcc
echo "deb http://us.archive.ubuntu.com/ubuntu/ xenial main" >> /etc/apt/sources.list.d/buster.list
echo "deb http://us.archive.ubuntu.com/ubuntu/ xenial universe" >> /etc/apt/sources.list.d/buster.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 40976EAF437D05B5 3B4FE6ACC0B21F32
apt-get update
apt-get install -y gcc-5 g++-5
ln -s /usr/bin/gcc-5 /usr/bin/gcc
ln -s /usr/bin/g++-5 /usr/bin/g++

información relacionada