¿Qué significa "dpkg-buildpackage -rfakeroot -d -us -uc -S falló"?

¿Qué significa "dpkg-buildpackage -rfakeroot -d -us -uc -S falló"?

Estaba intentando crear un paquete Debian simple, seguí estos pasos con el usuario root:


Primero, descargué el tarball ascendente y luego:

 $ mv hithere-1.0.tar.gz hithere_1.0.orig.tar.gz

Entonces:

 $ tar xf hithere_1.0.orig.tar.gz

Después:

 $ cd hithere-1.0
 $ dch --create -v 1.0-1 --package hithere 
 $ cd debian/
 $ rm *.ex *.EX

Luego edité "archivo de control" y "archivo de derechos de autor":

 $ nano control
 $ nano copyright


 $ cd ..
 $ debuild -S

Después del último comando, se generó este error:

root@mehrnaz-MS-A934:/home/fabdollahei/hithere-1.0# debuild -S dpkg-buildpackage -rfakeroot -d -us -uc -S
dpkg-buildpackage: warning: using a gain-root-command while being root
dpkg-buildpackage: source package hithere
dpkg-buildpackage: source version 1.0-1
dpkg-buildpackage: source distribution unstable
dpkg-buildpackage: source changed by root <[email protected]>
dpkg-source --before-build hithere-1.0
dpkg-source: error: syntax error in hithere-1.0/debian/control at line 15: block lacks the 'Package' field
dpkg-buildpackage: error: dpkg-source --before-build hithere-1.0 gave error exit status 255
dpkg-source: error: syntax error in hithere-1.0/debian/control at line 15: block lacks the 'Package' field
dpkg-buildpackage: error: dpkg-source --before-build hithere-1.0 gave error exit status 255
debuild: fatal error at line 1364:
dpkg-buildpackage -rfakeroot -d -us -uc -S failed

¿Cómo me deshago de ese error fatal?

Respuesta1

El mensaje simplemente dice que el dpkg-buildpackagecomando falló. Si lees los mensajes notarás inmediatamente dónde está el problema:

dpkg-source: error: syntax error in hithere-1.0/debian/control at line 15:
block lacks the 'Package' field
dpkg-buildpackage: error: dpkg-source --before-build hithere-1.0 gave error exit status 255

Si soluciona eso (y tal vez otros problemas que tenga, que podrían aparecer más adelante), debería funcionar.

Respuesta2

dpkg-buildpackage -rfakeroot -d -uc -us -S failedmedio;

  1. dpkg-buildpackagees el nombre del comando que se ejecutó. dpkg-buildpackage es una herramienta para crear paquetes Debian o '.debs'.
  2. -rfakerootes el primer argumento del comando y le dice a dpkg-buildpackage que actúe como si dpkg-buildpackage tuviera privilegios de root. Desde la página de manual; "Cuando dpkg-buildpackage necesita ejecutar parte del proceso de compilación como root, antepone el comando con el que se ejecuta", en este caso, fakeroot. (No usar su).
  3. La -dbandera significa "No comprobar las dependencias y los conflictos de compilación".
  4. -ucy -ussignifica no firmar el archivo de cambios o el código fuente respectivamente.
  5. -Ssignifica construir un paquete fuente. Los paquetes de Debian vienen en dos tipos; binario y fuente. El binario se construye a partir del paquete fuente.
  6. "fallido" significa que el comando falló, pero supongo que ya lo sabías. :-)

información relacionada