¿Instalar gcc-8 solo en Ubuntu 18.04?

33

Acabo de instalar Lubuntu 18.04 LTS. Hay dos opciones para instalar gcc: gcc-7y gcc-8. Ambos están disponibles desde apt-get installel primer momento.

Incluso después de instalar gcc-8, el sistema todavía se instalará gcc-7cuando instale otros paquetes como build-essential.

Como gcc-8es más reciente, ¿hay alguna manera de hacer que se instale gcc-8y gcc-8solo?

tinlyx
fuente
1
¿Simplemente no instalar build-essentialpero los otros paquetes de los que depende directamente? dpkg-dev g++-8 gcc-8 libc6-dev libc-dev make
muru
gcc-7 es requerido por gcc-8. Nota: Puede tener tantas versiones de gcc / g ++ como desee, instaladas al mismo tiempo. Extras biónicos: g++-4.8 g++-5 g++-6 g++-8... ... g ++ - 7 / gcc-7 es el compilador del sistema. Las versiones anteriores son necesarias para crear algunas aplicaciones antiguas.
Knud Larsen
@KnudLarsen "gcc-7 es requerido por gcc-8" ¿qué?
ZachB

Respuestas:

55

gcc-7y gcc-8felizmente convivirán juntos.

Sugeriría dejar que gcc-7se instale, para satisfacer build-essentialy quizás otros paquetes dependientes, y configurarlo gcc-8para que sea su instalación gcc predeterminada.

Úselo update-alternativespara haber gccredirigido automáticamente a gcc-8:

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-7 700 --slave /usr/bin/g++ g++ /usr/bin/g++-7
sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-8 800 --slave /usr/bin/g++ g++ /usr/bin/g++-8

Esto le dará la conveniencia de que gcc esté en la última versión, y aún así podrá invocar gcc-7o gcc-8directamente.

Si desea cambiar la versión predeterminada de gcc más adelante, ejecute sudo update-alternatives --config gcc. Traerá un mensaje similar a este, que le permite elegir la versión que se utilizará:

There are 2 choices for the alternative gcc (providing /usr/bin/gcc).

  Selection    Path            Priority   Status
------------------------------------------------------------
* 0            /usr/bin/gcc-8   800       auto mode
  1            /usr/bin/gcc-7   700       manual mode
  2            /usr/bin/gcc-8   800       manual mode

Press <enter> to keep the current choice[*], or type selection number: 

La prioridad más alta es la que selecciona automáticamente update-alternatives.

valiano
fuente
11

GCC 8 en Ubuntu 16.04

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install gcc-8 g++-8
gcc-8 --version

da 8.1.0 a partir de 2018-11. Ver también:

GCC 9 en Ubuntu 19.04

sudo apt install gcc-9

https://packages.ubuntu.com/search?keywords=gcc-9

Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
fuente
1
Esto no responde la pregunta. Esta información podría ser relevante para una pregunta completamente separada, pero esa ya tiene la respuesta: askubuntu.com/q/466651/113421 .
Ruslan
@Ruslan gracias por sus comentarios. Ayudar a 100x Googlers es más importante que ayudar a 1 OP ;-)
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件