Hice un paquete para mi PPA y lo cargué. Se construyó sin ningún problema.
Luego hice otro paquete que dependía del primero y lo subí. Falló porque no pudo encontrar los archivos en el primer paquete. Esto me lleva a creer que el primer paquete ni siquiera estaba instalado.
¿Cómo puedo asegurarme de que el primer paquete esté instalado antes de intentar compilar el segundo paquete?
El archivo de control para el primer paquete (libjsoncpp):
Fuente: jsoncpp Prioridad: extra Mantenedor: Nathan Osman Build-Depends: debhelper (> = 7) Versión estándar: 3.8.3 Sección: libs Página de inicio: http://jsoncpp.sf.net Paquete: jsoncpp-dev Sección: libdevel Arquitectura: cualquiera Depende: libjsoncpp (= $ {binary: Version}) Descripción: biblioteca de análisis JSON para C ++ jsoncpp es una biblioteca de C ++ que hace que sea fácil leer / escribir datos JSON. . Este paquete contiene las herramientas de desarrollo necesarias. para crear aplicaciones que usan jsoncpp. Paquete: libjsoncpp Sección: libs Arquitectura: cualquiera Depende: $ {shlibs: Depende}, $ {misc: Depende} Descripción: biblioteca de análisis JSON para C ++ jsoncpp es una biblioteca de C ++ que hace que sea fácil leer / escribir datos JSON.
El archivo de control para el segundo (libsopp):
Fuente: sopp Prioridad: extra Mantenedor: Nathan Osman Build-Depends: debhelper (> = 7) Versión estándar: 3.8.3 Sección: libs Página de inicio: http://stackoverflow.quickmediasolutions.com Paquete: sopp-dev Sección: libdevel Arquitectura: cualquiera Depende: libsopp (= $ {binary: Version}), jsoncpp-dev Descripción: una biblioteca C ++ para interactuar con sitios StackExchange. so ++ es una biblioteca de C ++ que envuelve la funcionalidad de StackOverflow API Proporciona acceso a todos los sitios de StackExchange. . Este paquete contiene los archivos de desarrollo necesarios para escribir software que usa so ++. Paquete: libsopp Sección: libs Arquitectura: cualquiera Depende: $ {shlibs: Depends}, $ {misc: Depends}, libjsoncpp Descripción: una biblioteca C ++ para interactuar con sitios StackExchange. so ++ es una biblioteca de C ++ que envuelve la funcionalidad de StackOverflow API Proporciona acceso a todos los sitios de StackExchange.
compiling
ppa
dependencies
Nathan Osman
fuente
fuente
Respuestas:
Su segundo paquete (sopp) necesita especificar que necesita el primero para compilar ; la dependencia que haya especificado (con
Depends:
) solo se encargará de la instalación.Para agregar una dependencia de compilación, agregue esto a la
Source:
sección superior ( ) de su archivo de control:Entonces debería poder soltar jsoncpp de la
Depends
línea, ya que lashlibs:Depends
macro debería funcionar por sí misma.fuente