Instalando o clang 6.0 no Ubuntu 18.04 LTS Bionic


17

Como posso instalar o clang no Ubuntu 18.04 LTS Bionic?


Adicione os resultados deapt-cache policy clang clang-6.0 clang-5.0
doug

2
Por favor, envie a saída de sudo apt install clang-6.0...
Olimjon

sudo apt install clang-6. Você também pode fazer sudo apt install clang-7esudo apt install clang-8
Boris

Respostas:


16

clang-6.0é (pelo menos atualmente) a versão padrão do clangBionic:

$ apt-cache depends clang
clang
  Depends: clang-6.0
  Breaks: <clang-3.2>
  Breaks: <clang-3.3>
  Breaks: <clang-3.4>
  Breaks: <clang-3.5>
  Replaces: clang
  Replaces: <clang-3.2>
  Replaces: <clang-3.3>
  Replaces: <clang-3.4>
  Replaces: <clang-3.5>


$ apt-cache policy clang-6.0
clang-6.0:
  Installed: 1:6.0-1ubuntu2
  Candidate: 1:6.0-1ubuntu2
  Version table:
 *** 1:6.0-1ubuntu2 500
        500 http://ca.archive.ubuntu.com/ubuntu bionic/universe amd64 Packages
        100 /var/lib/dpkg/status

Então, basta ativar o repositório universe e instalar clang- na loja de software ou na linha de comando usando

sudo apt update
sudo apt install clang

Lendo listas de pacotes ... Concluído Criando árvore de dependências Lendo informações de estado ... Concluído Alguns pacotes não puderam ser instalados. Isso pode significar que você solicitou uma situação impossível ou, se estiver usando a distribuição instável, alguns pacotes necessários ainda não foram criados ou removidos do Incoming. As seguintes informações podem ajudar a resolver a situação: Os seguintes pacotes têm dependências não atendidas: clang: Depends: clang-6.0 (> = 6.0 ~), mas não será instalado. E: Não foi possível corrigir os problemas, você manteve os pacotes quebrados .
Bluetake

Como posso resolver este problema?
Bluetake

1
@steeldriver usando o Estou recebendo o seguinte erro clang: Depende: clang-6.0 (> = 6.0 ~) mas não será instalado E: Não foi possível corrigir os problemas, você manteve os pacotes quebrados. Como corrigi-lo ?
Nithin Varghese

@NithinVarghese isso é um erro bastante genérico - há algumas correções sugeridas nesta pergunta anterior Impossível corrigir problemas, você tem pacotes quebrados realizadas entre outros
steeldriver

2

Adicionando à resposta do @ steeldriver, clangestá um pacote de dependência que fornece a versão clang padrão, que é 6.0 no Bionic.

Você pode ter melhor sorte instalando o clang-6.0pacote diretamente:

sudo apt-get update
sudo apt-get install clang-6.0

1
Não, não houve sorte em fazê-lo.
Nithin Varghese

@NithinVarghese Você pode precisar fazer sua própria pergunta e mostrar os erros que está recebendo. Eu tenho uma instalação 18.04 LTS e mal a instalei dessa maneira e funcionou bem. Sem nos dizer erros, é quase impossível adivinhar quais problemas você está tendo durante a instalação.
Terrance

2

Você pode instalar clang-6.0no Ubuntu 18.04 usando o repositório LLVM oficial.

wget -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add -

sudo apt-add-repository "deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-6.0 main"

sudo apt update && sudo apt install clang-6.0

1
Já cansei esse método antes e foi inútil como os outros. Você tem alguma idéia do que pode ser a causa deste
Nithin Varghese

Eu tentei e funcionou para mim. Você pode desativar outros repositórios e tentar novamente?
Ketan Patel

2

Você pode estar perdendo alguns canais necessários sources.list.

Etapa 1: Faça backup de seus repositórios e remova outras listas de repositórios sources.list.

Etapa 2: faça sudo gedit /etc/apt/sources.liste faça com que seja assim:

deb http://archive.ubuntu.com/ubuntu bionic main multiverse restricted universe
deb http://archive.ubuntu.com/ubuntu bionic-security main multiverse restricted universe
deb http://archive.ubuntu.com/ubuntu bionic-updates main multiverse restricted universe

Salvar e sair.

Etapa 3: atualize seu repositório:

sudo apt update

Etapa 4: Instalar clang-6.0:

sudo apt install clang-6.0

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.