AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 926023
Accepted
Roger Lipscombe
Roger Lipscombe
Asked: 2017-06-17 01:39:11 +0800 CST2017-06-17 01:39:11 +0800 CST 2017-06-17 01:39:11 +0800 CST

Instalar uma versão específica de um pacote e pacotes relacionados

  • 772

Estou tentando instalar o Erlang do repositório Erlang Solutions (role para baixo até "Instalação usando o repositório" na página de download do Erlang Solutions .

A versão atual é Erlang/OTP-20.0-rc2, mas eu quero Erlang 19.3. Se eu tentar o seguinte:

sudo apt-get install erlang=1:19.3-1

...Recebo o seguinte erro:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
Some packages could not be installed. This may mean that you have
requested an impossible situation or if you are using the unstable
distribution that some required packages have not yet been created
or been moved out of Incoming.
The following information may help to resolve the situation:

The following packages have unmet dependencies:
 erlang : Depends: erlang-diameter but it is not going to be installed
          Depends: erlang-eldap but it is not going to be installed
          Recommends: erlang-ic-java but it is not going to be installed
          Recommends: erlang-src but it is not going to be installed
          Recommends: erlang-examples but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

Eu sei que posso resolver isso usando o seguinte:

sudo apt-get install erlang=1:19.3-1 erlang-diameter=1:19.3-1 erlang-eldap=1:19.3-1

Mas isso exige que eu saiba, com antecedência, quais são os pacotes dependentes.

Como resolvo isso programaticamente (ou seja, no bash) no caso "geral"? Pelo menos para Erlang/OTP, afinal?

Nota: eu sei que posso sudo apt-get install esl-erlang=1:19.3(exceto que ele atualizará, a menos que eu use a resposta de fkraiem ).

apt
  • 2 2 respostas
  • 3489 Views

2 respostas

  • Voted
  1. Best Answer
    fkraiem
    2017-06-17T01:54:13+08:002017-06-17T01:54:13+08:00

    O que você está fazendo não está correto, porque mesmo que você instale a versão 19.3 manualmente, ela será atualizada para a versão 20* na próxima vez que você executar o apt upgrade. O que você deve fazer é criar um arquivo /etc/apt/preferences.d/erlangcom o seguinte conteúdo

    Package: erlang* esl-erlang
    Pin: version 1:19.3*
    Pin-Priority: 501
    

    Isso diz ao Apt que, para todos os pacotes cujo nome contém erlang, as versões que começam com 19.3devem ser preferidas a todas as outras versões, mesmo as mais novas. Então um simples apt install erlangdeve instalar a versão 19.3 com todas as suas dependências corretas.

    • 0
  2. Ukr
    2020-06-27T00:29:28+08:002020-06-27T00:29:28+08:00

    1. Remova as versões/pacotes anteriores do Erlang:

    $ sudo apt-get purge erlang esl-erlang erlang-base erlang-crypto erlang-eldap erlang-inets erlang-mnesia erlang-os-mon
    $ sudo apt-get autoremove
    $ sudo apt-get install -f
    
    $ sudo rm -rf /usr/lib/erlang
    $ cd /usr/local/bin
    $ sudo rm -f erl
    $ sudo rm -f erlc
    $ sudo rm -f epmd
    $ sudo rm -f run_erl
    $ sudo rm -f to_erl
    $ sudo rm -f dialisador
    $ sudo rm -f digitador
    $ sudo rm -f script
    $ sudo rm -f ct_run
    

    2. Adicione a entrada do repositório manualmente:

    • Para obter o nome de código do Ubuntu, digite $ lsb_release -c. No meu caso é xenial .

    • $ sudo nano /etc/apt/sources.liste adicione o seguinte texto no final do arquivo:

    # Erlang Solutions
    deb https://packages.erlang-solutions.com/ubuntu xenial contrib
    
    • Crie um arquivo /etc/apt/preferences.d/erlang :
    $ sudo touch /etc/apt/preferences.d/erlang
    $ sudo nano /etc/apt/preferences.d/erlang
    

    com o seguinte conteúdo:

    Package: erlang* esl-erlang
    Pin: version 1:21.3*
    Pin-Priority: 501
    

    onde 21.3 é a versão de Erlang/OTP.

    3. Instale Erlang:

    $ sudo apt-get update
    $ sudo apt-get install esl-erlang
    $ sudo ln -s /usr/lib/erlang/bin/erl /usr/local/bin/erl
    

    4. Verifique a versão Erlang instalada:

    $ erl -eval '{ok, Version} = file:read_file(filename:join([code:root_dir(), "releases", erlang:system_info(otp_release), "OTP_VERSION"])), io:fwrite(Version), halt().' -noshell
    
    • 0

relate perguntas

  • Como posso ver todas as versões de um pacote que estão disponíveis no arquivo?

  • Como os PPAs podem ser removidos?

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve