gcc-7 또는 clang 4.0을 설치하는 방법?


27

C ++ 17 기능을 사용하고 표준 호환 컴파일러 (바람직하게 GCC)를 설치하고 싶습니다. 나는 리눅스와 우분투에 완전히 익숙하지 않으며 단순히 많은 것을 이해하지 못한다.

https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test 를 따르려고했지만 운이 없습니다. 먼저 나는 달렸다 :

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

내가 이해 했듯이이 명령은 일부 키를 설치합니다. 다음으로 시도했습니다.

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

그 반환 :

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

다음으로 clang 개발 브랜치를 설치하려고했습니다.

apt-get install clang-4.0 lldb-4.0

그리고 그것은 나를 준다

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'

이 모든 것이 무엇을 의미합니까? 뭐가 문제 야?


1
add-apt-repository실행 한 명령은 PPA 페이지에 제공된 명령과 동일하지 않으므로 작동하지 않습니다. 올바른 것을 실행하십시오.
fkraiem 2016

test먼저 패키지를 설치했습니다 . 질문을 업데이트했습니다.
nikitablack

add-apt-repository이름이 리포지토리 추가를 의미하므로 패키지를 설치하지 않습니다. 이제 할 수 있습니다 apt install gcc-7.
fkraiem 2016

테스트 PPA에는 gcc-7 패키지가 있습니다. 설치하지 않았습니까?
dobey

2
: GCC (7)는 16.04 사용할 수 없습니다 같은 외모를 @nikitablack launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/... 하지만 당신은이 페이지의 기본에서 더 나은 그 소리와 기회, 모양이있을 수 있습니다 apt.llvm를 .org
andrew.46

답변:


23

이 패키지 에서 gcc-7 및 g ++-7을 이미 설치할 수 있습니다 .

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

9
그렇습니다. add-apt-repository ppa:ubuntu-toolchain-r/test && apt-get update && apt-get install -y gcc-7
오늘도이

clang-4.0.0이 설치되었지만 clang -v는 3.8.0을 표시합니다.
RED

둘 다 4.0.0 및 3.8.0이 설치되지만 기본적으로 시스템은 3.8을 읽습니다. Emscripten을 사용하는 동안 엉망이되어 읽지 만 4.0.0이 필요합니다.
RED

이 레포가 주거용 연결에서 실행됩니까?
Jonathan Henson

23

우분투 16.04 이하

공식 우분투 GCC 테스트 PPA가 있습니다.

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은 2017 년 5 월 에 릴리스 되었으므로 17.04 기본 릴리스에는 너무 늦었습니다.

PPA에는 현재 최신 릴리스 (예 : 16.10, LTS 12.04, 14.04 및 16.04)에 대한 GCC가 없습니다. https://launchpad.net/~ubuntu-toolchain-r/+archive/ubuntu/test | 스냅 샷 . 이전에 17.04가 있었지만 제거 된 것 같습니다. 참조 : https://unix.stackexchange.com/questions/371737/install-gcc-7-on-ubuntu

2018 년 10 월 16 일 우분투에서 테스트되었습니다.

우분투 17.10 이상

기본적으로 GCC 7.2 및 clang 4가 있습니다! 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)

16.04의 GCC 8

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

2018-11 기준 8.1.0을 제공합니다.

우분투 18.04의 기본값 :

크로스 툴 -NG

이것에 대해 정말로 진지한 경우 https://stackoverflow.com/questions/847179/multiple-glibc-libraries-on-a-single-host/52454603#에 설명 된대로 Crosstool-NG로 자신의 GCC를 컴파일하고 사용하십시오. 52454603

이렇게하면 반드시 신뢰할 수있는 PPA에서 Blob을 다운로드하지 않고도 다양한 Ubuntu 버전에서 다양한 GCC 버전을 사용할 수 있습니다.


1

OP는 "설치 방법 ..."을 묻습니다. 또는 Clang 4.0을 컴파일하는 방법.

Microsoft ChakraCore의 GitHub 저장소 스크립트를 사용하여 소스 코드에서 컴파일 할 수 있습니다 .

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

LLVM_VERSION="3.9.1"7 행에서 다음으로 업데이트LLVM_VERSION="4.0.0"

sudo ./compile_clang.sh

LLVM Gold를 지원하는 Clang 4.0 (및 전체 컴파일러 툴체인)을 다운로드하고 컴파일합니다.


3
"LLVM 골드"는 무엇입니까?
einpoklum-복원 Monica Monica

@einpoklum Binutils의 Gold Linker 용 LLVM 골드 플러그인 이라고 가정합니다 . 링크 타임 최적화에 사용됩니다.
Ruslan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.