Pagina 1 di 1

pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 15:25
da
Dopo esser riuscito con successo a pacchettizzare l'ultima versione di Gnomad2 e altri pacchetti ora volevo far qualcosa di più difficile per migliorare le mi conoscenze, visto che tra le tante cose non esistono sorgenti già debianizzati ma bisogna fare tutto da solo e da 0....solo dai semplici sorgenti.
Ora purtroppo è da 2 giorni che non riesco a venire a capo di questo problema.
Quando lancio pbuilder ottengo:

Codice: Seleziona tutto

....
dpkg-buildpackage: host architecture amd64
dpkg-buildpackage: source version without epoch 1.5.2.1~0gp-1
 fakeroot debian/rules clean
dh_testdir
dh_testroot
rm -f build-stamp configure-stamp
# Add here commands to clean up after the build process.
/usr/bin/make clean
make[1]: Entering directory `/tmp/buildd/cairodock-1.5.2.1~0gp'
make[1]: *** No rule to make target `clean'.  Stop.
make[1]: Leaving directory `/tmp/buildd/cairodock-1.5.2.1~0gp'
make: [clean] Error 2 (ignored)
dh_clean 
 dpkg-source -b cairodock-1.5.2.1~0gp
dpkg-source: building cairodock using existing cairodock_1.5.2.1~0gp.orig.tar.gz
dpkg-source: building cairodock in cairodock_1.5.2.1~0gp-1.diff.gz
dpkg-source: building cairodock in cairodock_1.5.2.1~0gp-1.dsc
 debian/rules build
dh_testdir
./configure --prefix=/usr --mandir=/usr/share/man
make: execvp: ./configure: Permission denied
make: *** [configure-stamp] Error 127
pbuilder: Failed autobuilding of package
 -> Aborting with an error
 -> unmounting dev/pts filesystem
 -> unmounting proc filesystem
 -> cleaning the build env 
    -> removing directory /var/cache/pbuilder/build//23261 and its subdirectories
Se puoi interessare il debian/rules che ho modificato e che sto utilizzando:

Codice: Seleziona tutto

#!/usr/bin/make -f
# -*- makefile -*-
# Sample debian/rules that uses debhelper.
# This file was originally written by Joey Hess and Craig Small.
# As a special exception, when this file is copied by dh-make into a
# dh-make output file, you may use that output file without restriction.
# This special exception was added by Craig Small in version 0.37 of dh-make.

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




CFLAGS = -Wall -g

ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
	CFLAGS += -O0
else
	CFLAGS += -O2
endif

configure: configure-stamp
configure-stamp:
	dh_testdir
	./configure --prefix=/usr --mandir=/usr/share/man

	touch configure-stamp


build: build-stamp

build-stamp: configure-stamp 
	dh_testdir

	# Add here commands to compile the package.
	$(MAKE)
	#docbook-to-man debian/cairodock.sgml > cairodock.1

	touch $@

clean:
	dh_testdir
	dh_testroot
	rm -f build-stamp configure-stamp

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

	dh_clean 

install: build
	dh_testdir
	dh_testroot
	dh_clean -k 
	dh_installdirs

	# Add here commands to install the package into debian/cairodock.
	$(MAKE) DESTDIR=$(CURDIR)/debian/cairodock install


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

# Build architecture-dependent files here.
binary-arch: build install
	dh_testdir -a
	dh_testroot -a
	dh_installchangelogs -a ChangeLog
	dh_installdocs -a
	dh_installexamples -a
#	dh_install
#	dh_installmenu
#	dh_installdebconf	
#	dh_installlogrotate
#	dh_installemacsen
#	dh_installpam
#	dh_installmime
#	dh_python
#	dh_installinit
#	dh_installcron
#	dh_installinfo
	dh_installman -a
#	dh_link
	dh_strip -a
	dh_compress -a
	dh_fixperms -a
#	dh_perl
#	dh_makeshlibs
#	dh_installdeb
	dh_shlibdeps -a
	dh_gencontrol -a
	dh_md5sums -a
	dh_builddeb -a

binary: binary-indep binary-arch
.PHONY: build clean binary-indep binary-arch binary install configure
Qualcuno sa darmi lumi?  ::)

gp

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 15:28
da Alex M0rF3uS
guarda io cairo per pacchettizzarla per il mio repo mi sono creato uno script apposito in quanto dopo averla clonata dall'svn ho dovuto eliminare le cartelle debian già presenti, rinominarle aggiungendo la versione, lanciare il dh_make e poi rinominarle ai nomi originali (per vià del makefile che fa riferimento al nome originale della cartella per molte cose) e poi pacchettizzare tutto, però io uso debuild binary non pbuilder

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 16:45
da
M0rF3uS ha scritto: guarda io cairo per pacchettizzarla per il mio repo mi sono creato uno script apposito in quanto dopo averla clonata dall'svn ho dovuto eliminare le cartelle debian già presenti, rinominarle aggiungendo la versione, lanciare il dh_make e poi rinominarle ai nomi originali (per vià del makefile che fa riferimento al nome originale della cartella per molte cose) e poi pacchettizzare tutto, però io uso debuild binary non pbuilder
Mmmm...ma nell'svn ci sono le directory debian già presenti?
Certo che è un vera rottura pacchettizare questo programma.  ::)

gp

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 16:54
da Alex M0rF3uS
in se cairo dock è semplice da pacchettizzare, è che lo sviluppatore lascia poca fantasia e libertà a chi lo compila, basta che cambi il nome alla cartella ad esempio perchè vuoi pacchettizzare una versione personalizzata e non ti funziona più nulla. Il file rules poi in alcune revision fa capo a files che sono nel suo pc, un disastro guarda....

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 17:00
da
Si si...stavo notando. Non una grande genialata, soprattutto se qualche manteiner vuole prendersi la briga di pacchettizzarlo.
Sinceramente al momento stavo dando un'occhiata al Makefile e stavo prendendo in considerazione di apportargli qualche modifica.
Bah...si vede che è proprio un francese sto tizio.  ;D

gp

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 17:02
da Alex M0rF3uS
non so quanto convenga secondo me ti stai per inoltrare nel sentiero della perdizione, io mi limito a pacchettizzarla con le mie cartelle debian e basta già la vita è complicata cosi (devo pacchettizzarla ogni volta per 32/64bit + hardy >.< )

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 18:18
da DktrKranz
Rendi il configure eseguibile e riprova.

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 19:09
da
Effettivamente il problema del configure pare essersi risolto. Ora però il problema è questo:

Codice: Seleziona tutto

dpkg-buildpackage: host architecture amd64
dpkg-buildpackage: source version without epoch 1.5.2.1~0gp-1
 fakeroot debian/rules clean
dh_testdir
dh_testroot
rm -f build-stamp configure-stamp
# Add here commands to clean up after the build process.
/usr/bin/make clean
make[1]: Entering directory `/tmp/buildd/cairodock-1.5.2.1~0gp'
make[1]: *** No rule to make target `clean'.  Stop.
make[1]: Leaving directory `/tmp/buildd/cairodock-1.5.2.1~0gp'
make: [clean] Error 2 (ignored)
dh_clean 
 dpkg-source -b cairodock-1.5.2.1~0gp
dpkg-source: building cairodock using existing cairodock_1.5.2.1~0gp.orig.tar.gz
dpkg-source: building cairodock in cairodock_1.5.2.1~0gp-1.diff.gz
dpkg-source: building cairodock in cairodock_1.5.2.1~0gp-1.dsc
 debian/rules build
dh_testdir
# Add here commands to configure the package.
touch configure-stamp
dh_testdir
# Add here commands to compile the package.
/usr/bin/make
make[1]: Entering directory `/tmp/buildd/cairodock-1.5.2.1~0gp'
make[1]: *** No targets specified and no makefile found.  Stop.
make[1]: Leaving directory `/tmp/buildd/cairodock-1.5.2.1~0gp'
make: *** [build-stamp] Error 2
pbuilder: Failed autobuilding of package
 -> Aborting with an error
 -> unmounting dev/pts filesystem
 -> unmounting proc filesystem
 -> cleaning the build env 
    -> removing directory /var/cache/pbuilder/build//7566 and its subdirectories

Il problema sta nella compilazione. A quanto pare il problema ora è quello a cui fa riferimento M0rF3us e cioè che il Makefile fa riferimento alla direcotory originale che è cairo-dock che io ho rinominato ovviamente in cairodock-numeroversione~etc.. . Esatto?

gp

PS: nel file INSTALL l'autore scrive di procedere così per la compilazione ed installazione:
autoreconf -isvf && ./configure && make
sudo make install
L' istruzione autoreconf la devo inserire nel file debian/rules oppure mi conviene darlo prima di eseguire il dh_make e creare tutta la struttura debian?
Perché se la inserisco nel file debian/rules pbuilder in sostanza mi dice qualcosa del tipo (non ricordo a memoria e non l'avevo segnato):

Codice: Seleziona tutto

$bin/sh: autoreconf file not found

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 23:03
da Alex M0rF3uS
allora ti dico la procedura che faccio io per pacchettizzarla:

svn checkout

for i in $(ls)
do mv $i $i-versione-ecc
done

poi con un ciclo uguale dai il dh_make dentro tutte le cartelle
poi ti rinomini a manina tutte le cartelle e le fai tornare ai nomi originali
ti editi i file control/changelog/rules in base alle tue esigenze
per ogni cartella poi dai:

autoreconf -isvf
./configure
make
debuild binary

;)

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 23:09
da Alex M0rF3uS
Questo è lo script che uso io per automatizzare il tutto:

Codice: Seleziona tutto

cd ~/
rm -vRf trunk
svn checkout svn://svn.berlios.de/cairo-dock/trunk
cd ~/trunk/cairo-dock
make clean
dh_make -s -n -e manteiner@dominio.it -c gpl
gedit debian/control
gedit debian/changelog
gedit debian/rules
autoreconf -isvf
./configure
debuild binary
cd ~/trunk
sudo dpkg -i *.deb #devi installarlo se no non compilano i plugins
cd ~/trunk/plug-ins
rm -vf *.deb #rimuovo eventuali pacchetti
rm -vRf xfce-integration #non compila se non hai xfce installato
rm -vf generate-new-applet.sh #non ti serve ai fini dei pacchetti
rm -vRf dustbin #o compili il dustbin o il rendering, io preferisco rendering se no non si vedono i temi
rm -vRf template # anche questo non compila
for i in $(ls);
if [ $i = rhythmbox* ]; #ci vogliono questi controlli altrimeni interferisocno con pacchetti ufficiali ubuntu
	then gedit $i/debian/control; #modifica in rhythmbox-cairo ad esempio il nome pacchetto
elif [ $i = Xgamma* ];
	then gedit $i/debian/control; #idem
elif [ $i = xmms* ];
	then gedit $i/debian/control; #idem
fi;
cd $i;
make clean;
gedit debian/changelog;
autoreconf -isvf;
./configure;
debuild binary;
cd ../;
done;
sicuramente è da perfezionare però intanto mi risparmia tempo

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 23:11
da Alex M0rF3uS
elimina il

do cp -vRf ~/cairobup/$i/debian $i;

serve a me per copiare la cartella debian da quella di backup ;D

ora che ci penso a te il controllo sul nome della cartella non ti serve in quanto devi editarti anche tutti i control quindi aggiustalo di conseguenza ;D

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 23:38
da
mmmm grazie per le dritte (io ad ogni modo non sto usando la svn)...domani a mentre fresca mi studio meglio quello che mi hai scritto e vedrò come procedere. ;)
thanks  (b2b)

gp

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: mercoledì 12 marzo 2008, 23:50
da Alex M0rF3uS
e quale stai usando? O.o

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: giovedì 13 marzo 2008, 13:14
da
M0rF3uS ha scritto: allora ti dico la procedura che faccio io per pacchettizzarla:

svn checkout

for i in $(ls)
do mv $i $i-versione-ecc
done

poi con un ciclo uguale dai il dh_make dentro tutte le cartelle
poi ti rinomini a manina tutte le cartelle e le fai tornare ai nomi originali
ti editi i file control/changelog/rules in base alle tue esigenze
per ogni cartella poi dai:

autoreconf -isvf
./configure
make
debuild binary

;)
Scusa una cosa. Ma tu quando dici di lanciare dh_make per ogni cartella ti riferisci alle varie cartelle dei plugins?

Ad ogni modo seguendo il metodo che tu hai applicato la cosa funziona.

Ora però mi sono fissato con pbuilder e voglio riuscire anche a pacchettizzare con esso, sorgenti compresi.

Sadomasochista?  ;D

gp

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: giovedì 13 marzo 2008, 13:58
da Alex M0rF3uS
ognuno fa le sue scelte  ??? io non voglio stare li ore per pacchettizzare una dock anche perchè debuild è ottimo come script, può comprimere anche i sorgenti volendo.

Ma se provi piacere a farti del male fai pure  :-\ ???

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: giovedì 13 marzo 2008, 14:33
da
M0rF3uS ha scritto: ognuno fa le sue scelte  ??? io non voglio stare li ore per pacchettizzare una dock anche perchè debuild è ottimo come script, può comprimere anche i sorgenti volendo.

Ma se provi piacere a farti del male fai pure  :-\ ???
Si si...ma il mio discorso era più che altro per capire come funzionano i vari tools per pacchettizzare...non era una questione della pacchettizzazione in se della dock o delle capacità di debuild.
Poi però devo dire che con pbuilder lo trovo pratico per pacchettizzare per altre architetture e versioni di distro. Ma qui credo sia una cosa personale. ;)

gp

Re: pbuilder e cairo-dock ...non riesco a venirne a capo.

Inviato: giovedì 13 marzo 2008, 14:42
da Alex M0rF3uS
si ovviamente poi dipende dalle preferenze di ognuno a da cosa deve fare.