Как установить clang ++?


38

У меня проблемы с получением Clang ++ для работы во время компиляции кода. В частности, я получаю make: clang++: Command not foundошибку.

Я бегал sudo apt-get install llvm, а также sudo apt-get install build-essentialи sudo apt-get update. Что мне нужно сделать, чтобы установить clang ++?

Ответы:


36

Установка llvmи build-essentialпакетов, как вы сделали, не вызывает clangили clang++должны быть установлены. Для этого вы должны установить один из пакетов clang , в зависимости от того, какая версия clangиclang++ вы хотите.

16,04

В Ubuntu 16.04 вы можете выбрать clang-3.5 , clang-3.6 , clang-3.7 и clang-3.8. .

14,04

В Ubuntu 14.04 вы можете выбрать clang-3.3Установите Clang-3.3 , clang-3.4Установите clang-3.4 и clang-3.5Установите clang-3.5 .

Вы можете установить их в Центре программного обеспечения или с помощью:

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

(Замена n на нужную подверсию, конечно.)

12,04

Если вы работаете с Ubuntu 12.04, есть только один пакет, который предоставляет clangи clang++, поэтому он просто называется clangУстановить лязг .


есть ли возможность установить clang из исходников без sudo? после проверки и проверки я попытался использовать make install, но появилось много разрешений.
Амир

Ссылка "clang-3.5" выдает "Страница 404 не найдена".
CW Holeman II

2
clang-3.6 доступен на их странице загрузки для Ubuntu 14.04: llvm.org/releases/3.6.0/…
Дэвид 天宇 Вонг

1
С 14.04 (trusty-updates), clang-3.6также доступно.
Джош Милторп

3
По крайней мере, для меня, 14.04 с clang-3.8установленным, я добавил мягкую ссылку для clang ++ (по умолчанию у меня только было /usr/bin/clang++-3.8). Например: sudo ln -s /usr/bin/clang++-3.8 /usr/bin/clang++.
rkersh

17

18.04 (бионический)

Я посетил http://apt.llvm.org/bionic/dists/ (т.е. бионические дистрибутивы).
Я определил, что 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/bionic/ llvm-toolchain-bionic-6.0 main"
sudo apt-get install -y clang-6.0 lld-6.0

Это дает вам двоичные файлы со следующими именами (и более, вероятно):

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

Он также устанавливает эти пакеты (и многое другое):

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

17.04 (хитрый)

То же, что и выше. Я повторю каждую строку для удобного копирования-вставки.

# 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 (Ксениал)

В принятом ответе уже приведены инструкции по установке clang-3.8 16.04, но вот как получить 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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.