Error :: Você deve colocar alguns URIs 'source' em seu sources.list

66

Estou tentando instalar o PIL em um módulo python no Ubuntu

Primeiro preciso instalar um pacote chamado python-imaging usando o seguinte comando

sudo apt-get build-dep python-imaging

Quando tento e faço isso, recebo o erro

E: You must put some 'source' URIs in your sources.list

Eu vi esta pergunta que mostra como para corrigir via GUI, mas estou usando a linha de comando. Alguém sabe como eu posso corrigir esse erro ..?

ATUALIZAÇÃO: Com base nas respostas abaixo, atualizei minha lista de pacotes, mas agora recebo esse erro. Não tenho certeza se está relacionado, senão vou começar uma nova pergunta, pois não consigo encontrar referência ao erro em lugar algum.

E: Build-Depends dependency for python-imaging cannot be satisfied because candidate version of package python-all-dev can't satisfy version requirements  
    
por david 11.07.2014 / 18:35

6 respostas

51

16.10 executar software-properties-gtk

depois, na guia "Software Ubuntu", clique em "Código-fonte":

Isso adicionou algumas linhas deb-src em /etc/apt/sources.list e agora posso fazer sudo apt-get build-dep <package> .

Eu sei que você não pediu nenhuma GUI, mas às vezes os devs simplesmente não suportam corretamente ... mas você sempre pode fazer um diff com este método e aplicá-lo depois.

    
38

Você pode editar a lista de fontes ( /etc/apt/sources.list ) diretamente. Eu acho que você precisa adicionar / descomentar estas linhas:

deb-src http://archive.ubuntu.com/ubuntu trusty main restricted #Added by software-properties
deb-src http://gb.archive.ubuntu.com/ubuntu/ trusty restricted main universe multiverse #Added by software-properties
deb-src http://gb.archive.ubuntu.com/ubuntu/ trusty-updates restricted main universe multiverse #Added by software-properties
deb-src http://gb.archive.ubuntu.com/ubuntu/ trusty-backports main restricted universe multiverse #Added by software-properties
deb-src http://security.ubuntu.com/ubuntu trusty-security restricted main universe multiverse #Added by software-properties
deb-src http://gb.archive.ubuntu.com/ubuntu/ trusty-proposed restricted main universe multiverse #Added by software-properties

Eu trabalhei isso desabilitando a opção de código-fonte e salvando uma cópia do arquivo sources.list, em seguida, ativando a opção de código-fonte, salvando outra cópia, então executando diff em ambos.

Você pode querer alterar o prefixo http://gb. para o prefixo das outras fontes na sua lista (assim ele usa o espelho repo mais próximo), e você também pode ignorar o #Added by software-properties .

Depois de editar sources.list , execute sudo apt-get update antes de tentar instalar novamente.

O diff completo pode ser encontrado aqui

Outra maneira é gerar um novo. Um método para obter uma sources.list completa é usar este site: link

    
por Wilf 11.07.2014 / 18:47
18

Edite o /etc/apt/sources.list

sudo nano /etc/apt/sources.list

remova # ou adicione linhas deb-src $ url. $ url = uma linha existente

Exemplo

deb http://ch.archive.ubuntu.com/ubuntu/ saucy main restricted
deb-src http://ch.archive.ubuntu.com/ubuntu/ saucy main restricted

deb blah blah

deb-src exatamente o mesmo blah blah

Consulte link para obter informações adicionais.

    
por Panther 11.07.2014 / 18:46
3

Para o Ubuntu 16.04, eu fiz essas atualizações com sucesso para o sources.list:

$ sudo diff /etc/apt/sources.list /etc/apt/sources.list.bkp 

6c6
< deb-src http://au.archive.ubuntu.com/ubuntu/ xenial main restricted
---
> # deb-src http://au.archive.ubuntu.com/ubuntu/ xenial main restricted

19c19
< deb-src http://au.archive.ubuntu.com/ubuntu/ xenial universe
---
> # deb-src http://au.archive.ubuntu.com/ubuntu/ xenial universe

39c9
< deb-src http://au.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse
---
> # deb-src http://au.archive.ubuntu.com/ubuntu/ xenial-backports main restricted universe multiverse

53c53
< deb-src http://security.ubuntu.com/ubuntu xenial-security multiverse
---
> # deb-src http://security.ubuntu.com/ubuntu xenial-security multiverse
    
por user3226232 01.08.2016 / 04:08
2

No Linux Mint (estou na versão 18), você pode ir para Software Sources (procure por ele no menu Iniciar ou abra-o em um terminal com software-sources ). Lá, na primeira guia, você encontrará uma caixa de seleção Ativar repositórios de código-fonte . Se você habilitar isso, o programa colocará as linhas corretas em seu arquivo /etc/apt/sources.list.d/official-source-repositories.list . Apenas não se esqueça de sudo apt-get update (ou pressione Atualizar o cache nas Fontes de Software) depois disso.

    
por jitter 28.11.2016 / 13:48
1

Aqui está a solução de linha de comando

cat /etc/apt/sources.list | grep deb-src  #  see what will get changed

saída típica acima de cmd

# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic main restricted
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic-updates main restricted
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic universe
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic-updates universe
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic-updates multiverse
# deb-src http://us.archive.ubuntu.com/ubuntu/ bionic-backports main restricted universe multiverse
# deb-src http://archive.canonical.com/ubuntu bionic partner
# deb-src http://security.ubuntu.com/ubuntu bionic-security main restricted
# deb-src http://security.ubuntu.com/ubuntu bionic-security universe
# deb-src http://archive.ubuntu.com/ubuntu bionic main universe restricted multiverse
# deb-src http://security.ubuntu.com/ubuntu bionic-security multiverse

se você está mudando as linhas acima, o que é sempre verdade em uma nova instalação do Ubuntu, então edite:

sudo sed -i~orig -e 's/# deb-src/deb-src/' /etc/apt/sources.list   

que faz um backup do arquivo de entrada, então uma pesquisa de deb-src comentada onde ele remove o comentário para tornar essas linhas ativas ... após a atualização dos metadados locais dará à sua máquina reconhecimento de novas categorias de pacotes do ubuntu

sudo apt-get update

agora, emita mais uma vez o comando original que falhou com:

E: You must put some 'source' URIs in your sources.list
    
por Scott Stensland 04.03.2018 / 01:20