Ich versuche, meine mit Hilfe von Netbeans 7.3 entwickelte C ++ - Anwendung zu debianen. Hier ist ein bisschen Makefile
davon.
APPNAME=remotedevicecontroller
install:
install config.xml /etc/${APPNAME}.conf.xml
install devices.rules /etc/udev/rules.d/${APPNAME}.rules
install error.log /var/log/${APPNAME}.log
install init.conf /etc/init/${APPNAME}.conf
install init.d /etc/init.d/${APPNAME}
install ${CND_ARTIFACT_NAME_${CONF}} /usr/local/bin/${APPNAME}
chmod u+x ${CND_ARTIFACT_NAME_${CONF}}
./${CND_ARTIFACT_NAME_${CONF}} -i
Ich folge dem Erstellen eines .DEB-Pakets und dem Debian New Maintainer-Handbuch . Wenn ich dpkg-buildpackage -rfakeroot
nach erfolgreichem Ausführen aller oben genannten Schritte ausgeführt werde, ist der folgende Fehler aufgetreten
$ dpkg-buildpackage -rfakeroot
dpkg-buildpackage: source package remotedevicecontroller
dpkg-buildpackage: source version 1.0-1
dpkg-buildpackage: source changed by satya gowtham kudupudi (gowtham) <[email protected]>
dpkg-buildpackage: host architecture i386
dpkg-source --before-build remotedevicecontroller-1.0
fakeroot debian/rules clean
dh clean
dh: No packages to build.
dpkg-source -b remotedevicecontroller-1.0
dpkg-source: info: using source format `3.0 (quilt)'
dpkg-source: info: building remotedevicecontroller using existing ./remotedevicecontroller_1.0.orig.tar.gz
dpkg-source: info: building remotedevicecontroller in remotedevicecontroller_1.0-1.debian.tar.gz
dpkg-source: info: building remotedevicecontroller in remotedevicecontroller_1.0-1.dsc
debian/rules build
dh build
dh: No packages to build.
fakeroot debian/rules binary
dh binary
dh: No packages to build.
signfile remotedevicecontroller_1.0-1.dsc
You need a passphrase to unlock the secret key for
user: "satya gowtham kudupudi (gowtham) <[email protected]>"
2048-bit RSA key, ID 9A2853A0, created 2013-08-22
gpg: gpg-agent is not available in this session
dpkg-genchanges >../remotedevicecontroller_1.0-1_i386.changes
dpkg-genchanges: error: cannot read files list file: No such file or directory
dpkg-buildpackage: error: dpkg-genchanges gave error exit status 2
Unter http://www.debian.org/doc/manuals/maint-guide/dreq.en.html#defaultrules gibt es keine Erklärung für die Rolle der rules
Datei. Was macht
%:
dh $@
bedeuten? Warum dpkg-buildpackage -rfakeroot
sagt dh: No packages to build.
?
$ dh binary-arch --no-act
sagtdh: No packages to build.
orig
in der vorherigen Testversion erstellten Tarball nicht entfernt . Aber ich bin auf ein anderes ProblemDer sehr wichtige Fehler, den ich in der gemacht habe,
Makefile
ist nicht zu verwenden$(DESTDIR)
. Ich poste es, um denjenigen zu helfen, die Schwierigkeiten haben, ein Debian-Paket mit diesem häufigen Fehler zu erstellen. Das RichtigeMakefile
sollte also sein:Wenn einige
make
Ziele nicht überschrieben werden können, kann das Überschreiben des entsprechenden dh_make-Ziels in derrules
Datei zum erfolgreichen Packen beitragen.Das
test
Ziel in meiner Anwendung gibt einen Fehler aus und es ist nicht wichtig, daher habe ich ihn überschriebendh_auto_test
.Denken Sie auch daran, alle Trace-Dateien zu bereinigen, die Ihre fehlgeschlagenen Versuche vor einem neuen Versuch hinterlassen haben.
quelle