/ / Zostavenie balíka Debian sa pokúša nainštalovať do reálneho / opt - build, deb, dpkg

Vytvorenie balíka Debian sa pokúša nainštalovať do real / opt - build, deb, dpkg

Toto je opäť jeden z týchto pekných problémov s balením Debianu.

Mám aplikáciu, ktorá sa inštaluje do / opt (umiestnenie inštalácie je v skutočnosti irelevantné, rovnaký problém sa vyskytuje s / usr):

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

Vzal som si funkčné balenie Debianu z mojej druhej aplikácie, ktorá používala CMake, ale konfigurácia, zostavenie a inštalácia boli podobné. Trošku som upravil súbor pravidiel, aby som vytvoril svoju novú aplikáciu:

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

Inštalačnú časť som nechal nedotknutú:

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

Teraz je problém ten, že keď sa pokúsim zostaviť balík, pokúsi sa ho nainštalovať ku skutočným / opt a havaruje:

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

Môžem len zistiť, prečo môj obal nefunguje s mojou novou aplikáciou. Alebo alternatívne, prečo to nefungovalo s druhou aplikáciou :)

odpovede:

0 pre odpoveď č. 1

Zdá sa, že môj inštalačný krok ignoroval DESTDIR daný súborom pravidiel Debianu.