/ / Das Erstellen eines Debian-Pakets versucht, eine Installation in real / opt - build, deb, dpkg zu installieren

Das Erstellen eines Debian-Pakets versucht, es in real / opt zu installieren - build, deb, dpkg

Dies ist wieder eines dieser schönen Debian-Verpackungsprobleme.

Ich habe eine App, die nach / opt installiert wird (der Installationsort ist eigentlich irrelevant, dasselbe Problem tritt bei / usr auf):

OPT = 1 ./configure && make && make install

Ich habe ein funktionierendes Debian-Paket von meiner anderen App genommen, die CMake verwendete, aber die Konfiguration, Erstellung und Installation waren ähnlich. Ich habe die Regeldatei ein wenig geändert, um meine neue App zu erstellen:

build: build-stamp
build-stamp:
dh_testdir

# Add here commands to compile the package.
OPT=1 ./configure && $(MAKE) -j$(shell cat /proc/cpuinfo | grep processor | wc -l)
touch build-stamp

Ich habe den Installationsteil unberührt gelassen:

install: build
dh_testdir
dh_testroot
dh_prep
dh_installdirs

# Add here commands to install the package into debian/<packagename>
DESTDIR=`pwd`/debian/`dh_listpackages` $(MAKE) install

Nun besteht das Problem darin, dass beim Installieren des Pakets versucht wird, zu installieren zum echten / opt und stürzt ab:

mkdir: cannot create directory ‘/opt/snm’: Permission denied
make[1]: *** [install_target] Error 1
make: *** [install] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit status 2
debuild: fatal error at line 1361:
dpkg-buildpackage -rfakeroot -D -us -uc -i -b failed

Ich kann einfach nicht herausfinden, warum meine Verpackung mit meiner neuen App nicht funktioniert. Oder alternativ, warum es mit der anderen App funktioniert hat :)

Antworten:

0 für die Antwort № 1

Es scheint, dass mein Installationsschritt nur das DESTDIR ignorierte, das in der Debian-Regeldatei angegeben ist.