Como instalar o clang ++?

38

Estou tendo problemas para fazer com que o clang ++ funcione enquanto compilo meu código. Estou especificamente recebendo um make: clang++: Command not founderro.

Eu corri sudo apt-get install llvm, e também sudo apt-get install build-essentiale sudo apt-get update. O que preciso fazer para instalar o clang ++?

user313944
fonte

Respostas:

36

A instalação dos pacotes llvme build-essential, como você fez, não causa clangou clang++deve ser instalada. Para isso, você deve instalar um dos pacotes clang , dependendo da versão clange do clang++que deseja.

16.04

No Ubuntu 16.04, suas opções são clang-3.5 , clang-3.6 , clang-3.7 e clang-3.8 .

14.04

No Ubuntu 14.04, suas opções são clang-3.3Instale o clang-3.3 , clang-3.4Instale o clang-3.4 e clang-3.5Instale o clang-3.5 .

Você pode instalá-los no Centro de Software ou com:

sudo apt-get update
sudo apt-get install clang-3.n

(Substituindo na sub-versão desejada, é claro.)

12.04

Se você estiver executando o Ubuntu 12.04, existe apenas um pacote que fornece clange clang++, portanto, é chamado clangInstalar clang .

Eliah Kagan
fonte
existe a chance de instalar o clang da fonte sem o sudo? depois de fazer e verificar tudo, tentei usar make install, mas muita permissão negada apareceu.
Amir
O link "clang-3.5" produz "Página 404 não encontrada".
CW Holeman II
2
O clang-3.6 está disponível na página de download do ubuntu 14.04: llvm.org/releases/3.6.0/…
David 天宇 Wong
11
Com o 14.04 (atualizações confiáveis), clang-3.6também está disponível.
27416 Josh Milthorpe
3
Pelo menos para mim, no 14.04 com o clang-3.8instalado, eu adicionei um link para o clang ++ (por padrão, eu só tinha /usr/bin/clang++-3.8). Por exemplo: sudo ln -s /usr/bin/clang++-3.8 /usr/bin/clang++.
rkersh
17

18.04 (Biônico)

Visitei http://apt.llvm.org/bionic/dists/ (ou seja, distribuições biônicas).
Eu determinei que 6.0 era a versão principal mais recente da cadeia de ferramentas.

Presumo que você deseje o vinculador, lld, também.

# grab the key that LLVM use to GPG-sign binary distributions
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo apt-get update
sudo apt-add-repository "deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-6.0 main"
sudo apt-get install -y clang-6.0 lld-6.0

Isso fornece binários com os seguintes nomes (e mais, provavelmente):

clang-6.0
clang++-6.0
lld-6.0
ld.lld-6.0

Ele também instala estes pacotes (e mais):

llvm-6.0
llvm-6.0-dev
llvm-6.0-runtime

17.04 (Artful)

O mesmo que acima. Vou repetir todas as linhas para copiar e colar conveniente.

# grab the key that LLVM use to GPG-sign binary distributions
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo apt-get update
sudo apt-add-repository "deb http://apt.llvm.org/artful/ llvm-toolchain-artful-6.0 main"
sudo apt-get install -y clang-6.0 lld-6.0

16.04 (Xenial)

A resposta aceita já fornece instruções para instalar o clang-3.8 no 16.04, mas aqui está como obter o clang-6.0:

# grab the key that LLVM use to GPG-sign binary distributions
wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -
sudo apt-get update
sudo apt-add-repository "deb http://apt.llvm.org/xenial/ llvm-toolchain-xenial-6.0 main"
sudo apt-get install -y clang-6.0 lld-6.0
Birchlabs
fonte
1

Instalando o Clang 9 no Ubuntu 18

sudo apt-get install clang-tools-9

Ele também instalará o llvm-9

Para mais informações, siga a documentação do clang .

getThingsDone
fonte