Instal gcc-8 hanya di Ubuntu 18.04?

33

Saya baru saja menginstal Lubuntu 18.04 LTS. Ada dua opsi untuk menginstal gcc: gcc-7dan gcc-8. Keduanya tersedia dari apt-get installluar kotak.

Bahkan setelah saya menginstal gcc-8, sistem masih akan menginstal gcc-7ketika saya menginstal paket lain seperti build-essential.

Karena gcc-8lebih baru, apakah ada cara untuk membuatnya menginstal gcc-8dan gcc-8hanya?

tinlyx
sumber
1
Hanya saja jangan menginstal build-essentialtetapi paket lain itu bergantung langsung? dpkg-dev g++-8 gcc-8 libc6-dev libc-dev make
muru
gcc-7 diperlukan oleh gcc-8. Catatan: Anda dapat memiliki versi gcc / g ++ sebanyak yang Anda inginkan, diinstal pada saat yang sama. Ekstra Bionik: g++-4.8 g++-5 g++-6 g++-8... ... g ++ - 7 / gcc-7 adalah kompiler sistem. Versi yang lebih lama diperlukan untuk membangun beberapa aplikasi yang lebih lama.
Knud Larsen
@KnudLarsen "gcc-7 diperlukan oleh gcc-8" apa?
ZachB

Jawaban:

55

gcc-7dan gcc-8dengan senang hati akan tinggal bersama.

Saya akan menyarankan untuk membiarkan gcc-7diinstal, untuk memuaskan build-essentialdan mungkin paket dependen lainnya, dan konfigurasikan gcc-8untuk menjadi instalasi gcc default Anda.

Gunakan update-alternativeskarena telah gccdialihkan secara otomatis ke 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

Ini akan memberi Anda kenyamanan gcc berada di versi terbaru, dan Anda masih dapat memohon gcc-7atau gcc-8langsung.

Jika nanti Anda ingin mengubah versi gcc default, jalankan sudo update-alternatives --config gcc. Ini akan membawa prompt yang mirip dengan ini, yang memungkinkan Anda memilih versi yang akan digunakan:

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: 

Prioritas yang lebih tinggi adalah yang dipilih secara otomatis oleh update-alternatives.

valiano
sumber
11

GCC 8 pada 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

memberikan 8.1.0 pada 2018-11. Lihat juga:

GCC 9 pada Ubuntu 19.04

sudo apt install gcc-9

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

Ciro Santilli 新疆 改造 中心 法轮功 六四 事件
sumber
1
Ini tidak menjawab pertanyaan. Informasi ini mungkin relevan untuk pertanyaan yang sepenuhnya terpisah, tetapi yang sudah memiliki jawabannya: askubuntu.com/q/466651/113421 .
Ruslan
@Ruslan terima kasih atas umpan baliknya. Membantu 100x Googler lebih penting daripada membantu 1 OP ;-)
Ciro Santilli 新疆 改造 中心 法轮功 六四 事件