Como você força o apt-get source a pegar o pacote que você pede?

2
$ apt-get source libtiff4
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Picking 'tiff3' as source package instead of 'libtiff4'
E: Unable to find a source package for tiff3

Se eu adicionar -f, isso não altera o comportamento. O que está causando isso e como forçá-lo a baixar o pacote que eu quero?

Com base em uma pesquisa, não posso nem saber onde está obtendo a ideia de tiff3

$ apt-cache search libtiff
libtiff-doc - TIFF manipulation and conversion documentation
libtiff-tools - TIFF manipulation and conversion tools
libtiff5 - Tag Image File Format (TIFF) library
libtiff5-alt-dev - Tag Image File Format library (TIFF), alternative development files
libtiff5-dev - Tag Image File Format library (TIFF), development files
libtiffxx5 - Tag Image File Format (TIFF) library -- C++ interface
gem-plugin-tiff - Graphics Environment for Multimedia - TIFF support
libtiff-opengl - TIFF manipulation and conversion tools
libtiff4 - Tag Image File Format (TIFF) library (old version)
libtiff4-dev - Tag Image File Format (TIFF) library (old version), development files
libtiffxx0c2 - Tag Image File Format (TIFF) library (old version) -- C++ interface
pngtools - series of tools for PNG (Portable Network Graphics) images
python-libtiff - wrapper to the libtiff library to Python using ctypes
    
por boatcoder 12.05.2014 / 17:50

2 respostas

1

Não há um relacionamento de 1 para 1 entre os pacotes binários e seus pacotes de origem correspondentes. Razões para isso incluem:

  • Em alguns casos, vários pacotes binários serão derivados de uma única fonte
  • Os nomes serão ligeiramente diferentes para refletir o versionamento do pacote binário
  • Alguns pacotes não incluem diretamente binários, mas apenas especificam pacotes de dependência que devem ser instalados.

Não consigo reproduzir seu problema específico, talvez porque eu tenha uma versão mais recente do Ubuntu instalada. Abaixo está um resumo de um problema semelhante com uma biblioteca semelhante (observe que tudo no meu exemplo já está instalado, mas as informações exibidas sobre mapeamento e dependências ainda são relevantes). Isso deve dar algumas boas dicas sobre como lidar com esse tipo de problema.

Eu instalei com sucesso um pacote chamado libjpeg8 :

$ sudo apt-get install libjpeg8
Reading package lists... Done
Building dependency tree       
Reading state information... Done
libjpeg8 is already the newest version.

Eu tento obter a fonte, mas ela é remapeada para algo com o sufixo -empty .

$ apt-get source libjpeg8
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Picking 'libjpeg8-empty' as source package instead of 'libjpeg8'
Skipping unpack of already unpacked source in libjpeg8-empty-8c

Eu listo as dependências do pacote desejado e vejo libjpeg-turbo8 :

$ apt-cache depends libjpeg8
libjpeg8
  Depends: libjpeg-turbo8
  Replaces: libjpeg8:i386
  Breaks: libjpeg8:i386

Eu instalei a fonte para libjpeg-turbo8 e obtive a origem que precisava:

$ apt-get source libjpeg-turbo8
Reading package lists... Done
Building dependency tree       
Reading state information... Done
Picking 'libjpeg-turbo' as source package instead of 'libjpeg-turbo8'
Skipping unpack of already unpacked source in libjpeg-turbo-1.3.0
    
por nobar 02.05.2015 / 01:42
0

Certifique-se de que sua verificação de entrada do "Código-fonte" está marcada em "Software e atualizações".

Se não, marque-o e abra um terminal e:

sudo apt-get update

(você provavelmente não precisa fazer isso, se você receber uma caixa de diálogo pedindo para recarregar a lista de pacotes depois de marcar com a marcação marcada se não foi) e então faça:

apt-get source libtiff4-dev

para buscar o código fonte do libtiff4.

    
por jobin 12.05.2014 / 18:04