[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Rules Makefile, Permission Denied



continued....

(sorry accidental button press!)

As I was saying:

I'm trying to build my first deb package and I've hit a problem,
I don't understand how the permissions work, I've just started using
fakeroot for running: fakeroot dpkg-buildpackage -F, but now my
package won't compile anymore, how exactly do I get the files
installed in /usr/share or /usr/share/applications??

here's my rules file:

#!/usr/bin/make -f
# Sample debian/rules that uses debhelper.
# This file is public domain software, originally written by Joey Hess.
#
# This version is for packages that are architecture independent.

# Uncomment this to turn on verbose mode.
#export DH_VERBOSE=1

icon = $(CURDIR)/link-lizard-icon.png
script = $(CURDIR)/gtk-link-lizard.py
launcher = $(CURDIR)/gtk-link-lizard.desktop

DEST1 = /usr/share/gtk-link-lizard-1.4
DEST2 = /usr/share/applications

build: build-stamp

build-stamp:
	dh_testdir

	# Add here commands to compile the package.
	#$(MAKE)

	touch build-stamp

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp

	# Add here commands to clean up after the build process.
	#$(MAKE) clean
	#$(MAKE) distclean

	dh_clean

install: build clean $(icon) $(script) $(launcher)
	dh_testdir
	dh_testroot
	dh_prep
	dh_installdirs

	mkdir -m 777 $(DEST1)
	install -m 777 $(icon) $(DEST1)
	install -m 777 $(script) $(DEST1)
	install -m 777 $(launcher) $(DEST2)
	mkdir -m 777 -p ~/Documents/gtk-link-lizard-1.4
	install -m 777 $(CURDIR)/links.txt ~/Documents/gtk-link-lizard-1.4

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

# Build architecture-independent files here.
binary-indep: build install
	dh_testdir
	dh_testroot
	dh_installchangelogs
	dh_installdocs
	dh_installexamples
#	dh_installmenu
#	dh_installdebconf
#	dh_installlogrotate
#	dh_installemacsen
#	dh_installcatalogs
#	dh_installpam
#	dh_installmime
#	dh_installinit
#	dh_installcron
#	dh_installinfo
#	dh_installwm
#	dh_installudev
#	dh_lintian
#	dh_bugfiles
#	dh_undocumented
	dh_installman
	dh_link
	dh_compress
	dh_fixperms
#	dh_perl
	dh_installdeb
	dh_gencontrol
	dh_md5sums
	dh_builddeb

# Build architecture-dependent files here.
binary-arch: build install
# We have nothing to do by default.

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install

and here's the resulting terminal readout:

jim@jim:~/Desktop/sandbox/gtk-link-lizard-1.4$ fakeroot dpkg-buildpackage -F
dpkg-buildpackage: export CFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export CPPFLAGS from dpkg-buildflags (origin: vendor):
dpkg-buildpackage: export CXXFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export FFLAGS from dpkg-buildflags (origin: vendor): -g -O2
dpkg-buildpackage: export LDFLAGS from dpkg-buildflags (origin:
vendor): -Wl,-Bsymbolic-functions
dpkg-buildpackage: source package gtk-link-lizard
dpkg-buildpackage: source version 1.4-1
dpkg-buildpackage: source changed by jim <jim@sonodrome.co.uk>
dpkg-buildpackage: host architecture i386
 dpkg-source --before-build gtk-link-lizard-1.4
 debian/rules clean
dh_testdir
dh_testroot
rm -f build-stamp
# Add here commands to clean up after the build process.
#/usr/bin/make clean
#/usr/bin/make distclean
dh_clean
 dpkg-source -b gtk-link-lizard-1.4
dpkg-source: info: using source format `3.0 (quilt)'
dpkg-source: info: building gtk-link-lizard using existing
./gtk-link-lizard_1.4.orig.tar.gz
dpkg-source: info: building gtk-link-lizard in
gtk-link-lizard_1.4-1.debian.tar.gz
dpkg-source: info: building gtk-link-lizard in gtk-link-lizard_1.4-1.dsc
 debian/rules build
dh_testdir
# Add here commands to compile the package.
#/usr/bin/make
touch build-stamp
 debian/rules binary
dh_testdir
dh_testroot
rm -f build-stamp
# Add here commands to clean up after the build process.
#/usr/bin/make clean
#/usr/bin/make distclean
dh_clean
dh_testdir
dh_testroot
dh_prep
dh_installdirs
mkdir -m 777 /usr/share/gtk-link-lizard-1.4
mkdir: cannot create directory `/usr/share/gtk-link-lizard-1.4':
Permission denied
make: *** [install] Error 1
dpkg-buildpackage: error: debian/rules binary gave error exit status 2




On 13 February 2011 00:12, Jim sonodrome <jim@sonodrome.co.uk> wrote:
> I'm trying to build my first deb package and I've hit a problem,
> I don't understand how the permissions work, I've just started using
> fakeroot for running: fakeroot dpkg-buildpackage -F, but now my
> package won't compile anymore, how exactly do I get the files
> installed in /usr/share or /usr/share/applications w
>


Reply to: