Estoy intentando construir un paquete libdbusmenu modificado. Se construye correctamente si lo construyo localmente:
sudo apt-get build-dep libdbusmenu
wget https://launchpad.net/~a-j-buxton/+archive/dbusmenu/+files/libdbusmenu_12.10.3%2B13.10.20130913-0ubuntu2.1.diff.gz
wget https://launchpad.net/~a-j-buxton/+archive/dbusmenu/+files/libdbusmenu_12.10.3%2B13.10.20130913-0ubuntu2.1.dsc
wget https://launchpad.net/~a-j-buxton/+archive/dbusmenu/+files/libdbusmenu_12.10.3%2B13.10.20130913.orig.tar.gz
dpkg-source -x libdbusmenu*.dsc
cd libdbusmenu*
dpkg-buildpackage
Sin embargo, en un PPA, una de las pruebas no se ejecuta, lo que hace que falle la compilación. La salida de prueba real no se escribe en el registro de compilación:
¿Cómo puedo resolver este problema?
Podría reducirse a una reproducción más cercana del entorno de construcción utilizado por los constructores de PPA. Si es así, ¿cómo hago eso?
He intentado construir utilizando un chroot pbuilder, esto funciona correctamente en mi sistema local.
Lintian produce las siguientes advertencias en el paquete:
W: libdbusmenu source: quilt-build-dep-but-no-series-file
W: libdbusmenu source: patch-system-but-no-source-readme
W: libdbusmenu source: ancient-standards-version 3.9.2 (current is 3.9.4)
export VERBOSE=1
adebian/rules
para forzar que toda la salida del conjunto de pruebas se escriba en el registro de compilación cuando falla. Puede intentar usar sbuild en lugar de pbuilder, consulte wiki.ubuntu.com/SimpleSbuild .Respuestas:
Al mirar a través del registro, hay algunas advertencias que probablemente debería tener en cuenta, especialmente si no las obtiene en la máquina local, pero creo que la gran pista sobre lo que está sucediendo es el nombre de la prueba fallida: glib -eventos.
los eventos casi siempre están relacionados con E / S, por lo que para intentar forzar el error en la máquina local, desactive XAUTHORITY y DISPLAY, cierre la entrada estándar o rediríjala a / dev / null y redirija la salida estándar y el error a un archivo. nohup hará la redirección por usted, pero no tocará el entorno, o podría usar en o por lotes en lugar de nohup, que también ofrece la ventaja de cambiar el líder de la sesión.
fuente