Como descobrir qual pacote de libc6 eu preciso?

2

Estou com o seguinte erro:

version GLIBC_2.14 not found 
version GLIBC_2.15 not found

ao tentar instalar o software que eu preciso.

Portanto, decidi atualizar a libc6 no meu debian (Linux nn15.project.org 3.2.0-4-amd64 #1 SMP Debian 3.2.46-1 x86_64 GNU/Linux) .

Encontrei o pacote libc6 nesta página e acho que provavelmente preciso de uma versão instável.

Minhas perguntas são as seguintes:

  1. Como instalo uma versão específica? Até agora eu usei apenas apt-get install package
  2. sem especificar qual delas devo usar?
  3. Qual é a diferença entre libc6-amd64, libc6-dbg, libc6-dev e outras?

Estou usando: ID do Distribuidor: Debian Descrição: Debian GNU / Linux 7.1 (wheezy) Lançamento: 7.1 Codename: wheezy

    
por Perlnika 04.02.2014 / 18:52

1 resposta

0

Como @ faheem-mitha compartilhado, não é uma boa idéia apenas atualizar aleatoriamente seu pacote glibc, pois você pode ter outros problemas.

Se, no entanto, você ainda quiser tentar, a versão instável que você está procurando está agora na versão stable / jessie.

Portanto, a primeira coisa que você precisaria verificar é se a versão libc6 necessária está nos backports. Veja backports.debian.org. Se no entanto, não está lá então

Você precisaria adicionar para adicionar os repositórios jessie em addition aos repositórios wheezy que você já tem em seu /etc/apt/sources.list

Junto com isso, você também deve fornecer explicitamente a avaliação em / etc / apt / preferences, indicando quais fontes têm mais de uma idade de peso do que outras.

Veja link para explicação.

Se você está executando backports ou executando qualquer outra versão além da versão que está executando (ou seja, wheezy), é uma boa idéia ou prática ter a prioridade do pin para que, por engano, uma determinada versão não seja instalada.

Depois de fazer isso, faça um sudo aptitude update

Uma vez feito isso, você pode ver quais versões do libc6 são instaláveis / disponíveis no seu sistema, fazendo $apt-show-versions -a $PACKAGENAME ou $apt-cache policy $PACKAGENAME

Por exemplo, no meu final: -

$ apt-cache policy libc6
libc6:
  Installed: 2.21-0experimental1
  Candidate: 2.21-0experimental1
  Version table:
 *** 2.21-0experimental1 100
          1 http://httpredir.debian.org/debian experimental/main amd64 Packages
        100 /var/lib/dpkg/status
     2.19-20 990
        990 http://httpredir.debian.org/debian testing/main amd64 Packages
        100 http://httpredir.debian.org/debian unstable/main amd64 Packages

Agora para instalar uma versão específica que você faz: -

$ sudo aptitude instala libc6 = 2.21-0experimental1. É certo que haveria outros pacotes que também precisariam ser atualizados, caso contrário, eles se queixariam. Atualize todos os pacotes que se queixam e, depois de instalados corretamente, reinicialize o sistema, execute $sudo aptitude autoclean uma vez e você está no negócio.

No que diz respeito às diferenças entre os vários pacotes da libc6, cada pacote binário executa uma funcionalidade pouco diferente. Por exemplo, -dbg é o caso da biblioteca c ter um bug e precisar ser depurada, da mesma forma -dev é usado se você quiser compilar um programa que precisa da biblioteca libc6 atualizada e assim por diante.

Você pode usar $aptitude show $PACKAGENAME para encontrar mais sobre um pacote.

    
por 22.09.2015 / 02:19

Tags