Bagaimana cara menginstal gcc-7 atau dentang 4.0?


27

Saya ingin mencoba fitur C ++ 17 dan saya ingin menginstal compiler standar yang kompatibel (lebih disukai GCC). Saya benar-benar baru di Linux dan Ubuntu dan saya tidak mengerti banyak.

Saya mencoba mengikuti https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test tetapi tidak berhasil. Pertama saya berlari:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update

Seperti yang saya pahami, perintah ini menginstal beberapa kunci. Selanjutnya saya mencoba:

sudo add-apt-repository ppa:ubuntu-toolchain-r/gcc-7

Itu kembali:

Error: 'ppa:ubuntu-toolchain-r/gcc-7' invalid

Selanjutnya saya mencoba menginstal cabang pengembangan dentang:

apt-get install clang-4.0 lldb-4.0

Dan itu memberi saya

E: Unable to locate package clang-4.0
E: Couldn't find any package by glob 'clang-4.0'
E: Couldn't find any package by regex 'clang-4.0'
E: Unable to locate package lldb-4.0
E: Couldn't find any package by glob 'lldb-4.0'
E: Couldn't find any package by regex 'lldb-4.0'

Apa artinya semua ini? Apa yang salah?


1
The add-apt-repositoryperintah yang Anda berlari tidak sama dengan yang diberikan pada halaman PPA, sehingga tak heran itu tidak bekerja. Coba jalankan yang benar.
— fkraiem

Saya menginstal testpaket terlebih dahulu. Memperbarui pertanyaan.
— nikitablack

add-apt-repositoryseperti namanya menambahkan repositori, itu tidak menginstal paket. Sekarang kamu bisa melakukannya apt install gcc-7.
— fkraiem

PPA uji memiliki paket gcc-7 di dalamnya. Apakah Anda belum mencoba menginstalnya?
— dobey

2
@nikitablack Sepertinya gcc 7 tidak tersedia untuk 16.04: launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/... Tapi Anda mungkin memiliki kesempatan lebih baik dengan dentang, lihat di bagian bawah halaman ini: apt.llvm .org
— andrew.46

Jawaban:


23

Anda sudah dapat menginstal gcc-7 dan g ++ - 7 dari paket ini .

sudo add-apt-repository ppa:jonathonf/gcc-7.1
sudo apt-get update
sudo apt-get install gcc-7 g++-7

9
Ya, ini berhasil. Adapun hari ini, ppa ini juga berfungsiadd-apt-repository ppa:ubuntu-toolchain-r/test && apt-get update && apt-get install -y gcc-7
— nikitablack

dentang-4.0.0 diinstal tetapi dentang -v menunjukkan 3.8.0.
— RED

Keduanya diinstal 4.0.0 dan 3.8.0 tetapi secara default sistem membaca 3.8. Yang mengacaukan saat menggunakan Emscripten yang membaca ini tetapi membutuhkan 4.0.0.
— RED

Apakah repo ini berjalan dari koneksi perumahan atau semacamnya?
— Jonathan Henson

23

Ubuntu 16.04 dan lebih rendah

Ada PPA uji Ubuntu GCC resmi yang harus dipilih:

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

GCC 7 dirilis pada Mei 2017 , jadi terlambat untuk 17,04 rilis utama.

PPA saat ini tidak memiliki GCC untuk rilis yang lebih baru misalnya 16.10, hanya LTS 12.04, 14.04 dan 16.04, seperti yang dapat dilihat di: https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test | snapshot . Saya pikir itu memiliki 17,04 sebelumnya tetapi sudah dihapus? Lihat juga: /unix/371737/install-gcc-7-on-ubuntu

Diuji pada Ubuntu 16.04, Oktober 2018.

Ubuntu 17.10 ke atas

Memiliki GCC 7.2 dan clang 4 secara default! https://packages.ubuntu.com/artful/gcc | https://packages.ubuntu.com/artful/clang

$ gcc --version
gcc (Ubuntu 7.2.0-8ubuntu3) 7.2.0
$ clang --version  
clang version 4.0.1-6 (tags/RELEASE_401/final)

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

Default di Ubuntu 18.04:

Crosstool-NG

Jika Anda benar-benar serius tentang hal ini, kompilasi dan gunakan GCC Anda sendiri dengan Crosstool-NG sebagaimana dijelaskan di: /programming/847179/multiple-glibc-libraries-on-a-single-host/52454603# 52454603

Ini akan memungkinkan Anda untuk menggunakan berbagai versi GCC pada berbagai versi Ubuntu tanpa mengunduh gumpalan dari PPA yang tidak selalu Anda percayai.


1

OP meminta "cara menginstal ...". Atau, bagaimana cara mengkompilasi Dentang 4.0.

Anda dapat mengkompilasi dari kode sumber menggunakan skrip dari repositori GitHub Microsoft ChakraCore .

wget https://raw.githubusercontent.com/Microsoft/ChakraCore/master/tools/compile_clang.sh

Perbarui LLVM_VERSION="3.9.1"pada baris 7 hinggaLLVM_VERSION="4.0.0"

sudo ./compile_clang.sh

Ini akan mengunduh dan mengkompilasi Clang 4.0 (dan seluruh rantai alat penyusun) dengan dukungan LLVM Gold.


3
Apa itu "LLVM gold"?
— einpoklum - mengembalikan Monica

@einpoklum Saya kira itu adalah plugin emas LLVM untuk Gold Linker dari Binutils. Ini digunakan untuk optimasi tautan-waktu.
— Ruslan
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.