it-swarm-pt.tech

Como fazer o upload do pacote com dependências para o meu PPA?

Eu fiz um pacote para o meu PPA e fiz o upload dele. Foi construído sem problemas.

Então fiz outro pacote que dependia do primeiro e fiz o upload dele. Ele falhou porque não conseguiu encontrar os arquivos no primeiro pacote. Isso me leva a acreditar que o primeiro pacote não foi instalado.

Como posso ter certeza de que o primeiro pacote está instalado antes de tentar criar o segundo pacote?

O arquivo de controle para o primeiro pacote (libjsoncpp):

 Fonte: jsoncpp 
 Prioridade: extra 
 Mantenedor: Nathan Osman 
 Construir-Depende: debhelper (> = 7) 
 Padrões-Versão: 3.8 .3 
 Seção: libs 
 Homepage: http://jsoncpp.sf.net 
 
 Pacote: jsoncpp-dev 
 Seção: libdevel 
 Arquitetura: qualquer 
 Depende: libjsoncpp (= $ {binary: Version}) 
 Descrição: biblioteca de análise JSON para C++ 
 Jsoncpp é uma biblioteca C++ que facilita para 
 ler/gravar dados JSON. 
. 
 Este pacote contém as ferramentas de desenvolvimento necessárias 
 para criar aplicativos que usam jsoncpp. 
 
 Pacote: libjsoncpp 
 Seção: libs 
 Arquitetura: qualquer 
 Depende de: $ {shlibs: Depende}, $ {misc: Depende} 
 Descrição: JSON parsing biblioteca para C++ 
 jsoncpp é uma biblioteca C++ que facilita a leitura de dados JSON 
.

O arquivo de controle para o segundo (libsopp):

 Fonte: sopp 
 Prioridade: extra 
 Mantenedor: Nathan Osman 
 Construir-Depende: debhelper (> = 7) 
 Padrões-Versão: 3.8 .3 
 Seção: libs 
 Homepage: http://stackoverflow.quickmediasolutions.com 
 
 Pacote: sopp-dev 
 Seção: libdevel 
 Arquitetura: qualquer 
 Depende: libsopp (= $ {binary: Version}), jsoncpp-dev 
 Descrição: Uma biblioteca C++ para interface com sites do StackExchange. 
 So ++ é uma biblioteca C++ que envolve a funcionalidade da API StackOverflow 
. Ele fornece acesso a todos os sites do StackExchange. 
. 
 Este pacote contém os arquivos de desenvolvimento necessários para escrever o software 
 Que usa isso ++. 
 
 Pacote: libsopp 
 Seção: libs 
 Arquitetura: qualquer 
 Depende de: $ {shlibs: Depende}, $ {misc: Depende}, libjsoncpp 
 Descrição: A C++ biblioteca para fazer interface com os sites do StackExchange. 
 so ++ é uma biblioteca C++ que envolve a funcionalidade da API StackOverflow 
. Ele fornece acesso a todos os sites do StackExchange. 
13
Nathan Osman

Seu segundo pacote (sopp) precisa especificar que precisa do primeiro para build; a dependência que você especificou (com Depends:) só irá lidar com a instalação.

Para adicionar uma dependência de compilação, adicione isso à seção superior (Source:) do seu arquivo de controle:

Construir-Depende: jsoncpp-dev

Você deve poder soltar o jsoncpp da linha Depends, pois a macro shlibs:Depends deve resolver isso por conta própria.

10
Jeremy Kerr