<html>
<head>
<meta content="text/html; charset=ISO-8859-1"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
<div class="moz-cite-prefix">Hola,<br>
<br>
el usuario no debe instalar nada a mano, de los programas que
generalmente compilamos nosotros a mano (gazebo, gearbox, etc) se
hicieron paquetes aparte de cada uno. Luego se puso como
dependencia estos paquetes más los paquetes de los repositorios
que necesita (ice, opencv, etc).<br>
<br>
El usuario debe hacer: "sudo aptitude install jderobot" y que con
eso ya se instale todo lo necesario.<br>
<br>
Saludos.<br>
<br>
El 28/11/12 00:20, Mikel Gonzalez Baile escribió:<br>
</div>
<blockquote
cite="mid:CAOff0X55COGAK7pHwpbyqSvMso7P9RnYAzeXv04duqRbcA11fg@mail.gmail.com"
type="cite">Hola Edu,
<div><br>
</div>
<div>muchas gracias por ese recurso, ahora mismo muchas cosas no
las entiendo bien, pero conforme avance seguro que como guía de
"pasos a seguir" me viene genial.</div>
<div><br>
</div>
<div>
Hasta ahora he conseguido crear pequeños paquetes, y crear un
paquete de jderobot-5.1 con todas las fuentes (componentes,
librerías, interfaces, ...) que se encuentran en el directorio
"trunk/" del repositorio, claro, partiendo de un PC que ya tiene
instalado todas las dependencias necesarias (gearbox, ice, etc,
etc) previamente. Ahora me surge la duda sobre qué más debe
contener un paquete, es decir, si yo a alguien le digo que se
instale todo lo necesario para que JDErobot funcione y le paso
mi paquete generado supongo que debería funcionarle.</div>
<div><br>
</div>
<div>Entonces, mi duda sería, qué debe contener el paquete
jderobot?, por ejemplo, en la versión que hiciste, si mal no
recuerdo el simulador Gazebo se instalaba con el propio paquete.
Otras dependencias, como son ICE, gearbox, etc, etc. también
debo incluirlas en el paquete? o esto debería instalarlo el
usuario a mano antes de instalar el paquete?</div>
<div><br>
</div>
<div>Un saludo y gracias!!!</div>
<div><br>
</div>
<div>Mikel.</div>
<div class="gmail_extra"><br>
<br>
<div class="gmail_quote">2012/11/27 Eduardo Perdices <span
dir="ltr"><<a moz-do-not-send="true"
href="mailto:eperdices@gsyc.es" target="_blank">eperdices@gsyc.es</a>></span><br>
<blockquote class="gmail_quote" style="margin:0 0 0
.8ex;border-left:1px #ccc solid;padding-left:1ex">
<div bgcolor="#FFFFFF" text="#000000">
<div>Hola,<br>
<br>
yo hice los paquetes de la 5.0 y tengo un archivo donde
fui apuntando todo lo que hice, te copio todo lo que
tengo:<br>
<br>
<br>
#Descargamos gearbox 9.11:<br>
<a moz-do-not-send="true"
href="http://sourceforge.net/projects/gearbox/files/gearbox/9.11/gearbox-9.11.tar.gz/download"
target="_blank">http://sourceforge.net/projects/gearbox/files/gearbox/9.11/gearbox-9.11.tar.gz/download</a><br>
<br>
<br>
<br>
#Instalamos paquetes básicos:<br>
sudo aptitude install build-essential file patch perl
python autoconf automake autotools-dev dh-make debhelper
devscripts fakeroot gnupg gfortran gpc xutils-dev
lintian pbuilder patchutils quilt git<br>
<br>
<br>
<br>
Configuramos .bashrc:<br>
#Debian<br>
<a moz-do-not-send="true"
href="mailto:DEBEMAIL=xxx@gsyc.es" target="_blank">DEBEMAIL=xxx@gsyc.es</a><br>
DEBFULLNAME="Nombre Apellido"<br>
export DEBEMAIL DEBFULLNAME<br>
<br>
<br>
<br>
#Copiamos el código fuente en
$HOME/paquete/paquete-version<br>
mkdir ~/gearbox<br>
cd ~/gearbox<br>
cp /../gearbox-9.11.tar.gz .<br>
tar -zxvf gearbox-9.11.tar.gz<br>
<br>
<br>
<br>
#Iniciamos creación del paquete<br>
cd ~/gearbox/gearbox-9.11/<br>
dh_make -f ../gearbox-9.11.tar.gz #Seleccionamos
single binary (s)<br>
#Con esto se creará el directorio debian, si ya
existiese antes ejecutar dh_make con la opción
--addmissing<br>
<br>
<br>
<br>
#Archivos dentro de la carpeta debian<br>
#Control<br>
Modificamos Section (extra), Homepage, Description, y
Build-depends si es necesario.<br>
También escribimos dos veces lo de Package, ...,
Description para tener un binario normal y un -dev<br>
Si queremos saber las dependencias de un binario probar
con:<br>
objdump -p /usr/bin/nombre_paquete | grep NEEDED<br>
<br>
#Copyright<br>
Rellenamos los datos que falten (si queremos)<br>
<br>
#Changelog<br>
Para documentar los cambios realizados<br>
<br>
#Rules<br>
Script que sirve como Makefile, se puede dejar por
defecto<br>
O copiar el creado por defecto cambiando el configure<br>
<br>
#Directorios<br>
Directorios que se necesitan y se van a crear en
debian/tmp<br>
Necesitamos uno por cada paquete<br>
touch gearbox.dirs<br>
touch gearbox-dev.dirs<br>
Si se crea un único archivo 'dirs' sólo se aplica al
primer binario<br>
<br>
#Archivos install<br>
Archivos que hay que copiar al hacer el install, es como
si delante de la instrucción hiciesemos un cp<br>
Uno para cada paquete<br>
touch gearbox.install<br>
touch gearbox-dev.install<br>
<br>
#Postrm y posinst<br>
Archivos que se ejecutan tras la instalación y el
borrado<br>
Usamos los de por defecto<br>
Renombramos los archivos postrm.ex y posinst.ex<br>
mv postrm.ex postrm<br>
mv postinst.ex postinst<br>
<br>
<br>
<br>
#Construcción del paquete<br>
cd ~/gearbox/gearbox-9.11/<br>
dpkg-buildpackage<br>
Esto creará en ./.. los .deb y varios archivos más para
recuperar las fuentes<br>
<br>
<br>
<br>
<br>
#Para recuperar todos el workspace a partir del paquete
ya creado<br>
Necesitamos los archivos paquete.orig.tar.gz
paquete.diff.gz y paquete.dsc<br>
Lo recuperamos ejecutando:<br>
dpkg-source -x gearbox_9.11-1.dsc<br>
<br>
<br>
<br>
#Creación chroot<br>
sudo aptitude install debootstrap schroot<br>
#Creamos el archivo:<br>
sudo editor /etc/schroot/chroot.d/lucid-i386<br>
#Con el texto:<br>
[lucid-i386]<br>
description=Ubuntu 10.04 Lucid for i386<br>
directory=/srv/chroot/lucid-i386<br>
#personality=linux32<br>
root-users=robotica<br>
type=directory<br>
users=robotica<br>
#Descargamos sistema base<br>
sudo mkdir -p /srv/chroot/lucid-i386<br>
sudo debootstrap --variant=buildd --arch i386 lucid
/srv/chroot/lucid-i386/ <a moz-do-not-send="true"
href="http://archive.ubuntu.com/ubuntu/"
target="_blank">http://archive.ubuntu.com/ubuntu/</a><br>
#Comprobamos que ha funcionado<br>
schroot -l #debería aparecer lucid-i386<br>
sudo schroot -c lucid-i386 -u root<br>
<br>
<br>
<br>
#Para saber la versión de un paquete del que dependa<br>
aptitude show paquete<br>
<br>
<br>
<br>
#Subirlos al servidor<br>
Entramos en <a moz-do-not-send="true"
href="http://jderobot.org" target="_blank">jderobot.org</a>
con usuario robotica<br>
<br>
Los paquetes están en
/var/www/apt/dists/lucid/jderobot/binary-i386<br>
Las fuentes están en /var/www/apt/dists/source<br>
#scp */*.deb <a moz-do-not-send="true"
href="mailto:robotica@jderobot.org:debs-lucid"
target="_blank">robotica@jderobot.org:debs-lucid</a><br>
#scp */*.gz */*.dsc */*.changes <a
moz-do-not-send="true"
href="mailto:robotica@jderobot.org:src"
target="_blank">robotica@jderobot.org:src</a><br>
#sudo cp *.deb
/var/www/apt/dists/lucid/jderobot/binary-i386/<br>
#sudo cp *.gz *.dsc *.changes /var/www/apt/dists/source<br>
Una vez copiados ejecutamos sudo
/var/www/apt/actualiza_repo.sh<br>
<br>
<br>
<br>
<br>
#Para cambiar la versión, modificar en debian/changelog
el nombre del paquete<br>
<br>
Saludos.<br>
<br>
El 27/11/12 22:16, Mikel Gonzalez Baile escribió:<br>
</div>
<div>
<div class="h5">
<blockquote type="cite">Hola Óscar,
<div><br>
</div>
<div>estoy empezando a crear mis primeros paquetes
con dpkg, había leído sobre checkinstall pero creo
que dpkg es más completo (corrígeme si me
equivoco), y de momento estoy probando con cosas
sencillas, agregando poco a poco más complejidad
(cabeceras, librerías, dependencias...) y
adaptándolo al CMake, que es la herramienta que
utiliza JDErobot.</div>
<div><br>
</div>
<div>Lo que sí tengo dudas, es en cómo hacer que si
por ejemplo tu paquete necesita de otros para su
instalación, instalar todos éstos previamente de
forma automática, pero bueno, iré investigando y
comentando por aquí.</div>
<div><br>
</div>
<div>Un saludo y gracias.</div>
<div><br>
</div>
<div>Mikel.<br>
<br>
On Tuesday, 27 November 2012, Oscar Garcia wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0
0 .8ex;border-left:1px #ccc
solid;padding-left:1ex"> El 27/11/12 17:46,
Mikel Gonzalez Baile escribió:<br>
> este mensaje va dirigido para Rober y Edu
ya que me ha comentado José<br>
> María que fueron los que crearon los
paquetes de JDErobot 4.3, pero si<br>
> alguien más controla del tema y puede
echarme un cable, genial :-).La<br>
> ayuda que solicito es básicamente si
disponéis de los recursos<br>
> (manuales, tutoriales, ...) que
utilizasteis, algún tipo de consejo o<br>
> apunte que os sirvió en su día para
facilitar la tarea, o algo similar.<br>
<br>
<br>
Buenas tardes.<br>
<br>
Yo hasta ahora he creado mis paquetes deb con
checkinstall y<br>
posteriormente, con dpkg, los he desempaquetado
(-x), retocado y vuelto<br>
a empaquetar (-b). Por ahora no he creado nunca
un post-script ni nada<br>
similar, pero serían muy útiles, por ejemplo,
para crear los enlaces<br>
simbólicos de python-mt-2.x, agregar
LD_LIBRARY_PATH en<br>
/etc/environment, etc...<br>
<br>
Espero que te sea de utilidad.<br>
<br>
PD: No sé si guardo aún algunos paquetes
generados para x86 (32 bits),<br>
pero tengo algunos generados recientemente para
ARM (armv7) que podrían<br>
ser útiles para móviles android o raspberries,
sólo quedaría retocarlos<br>
y volverlos a empaquetar. Avísame cuando tengas
los tuyos creados y<br>
trato de modificar los manifiestos para que sean
iguales que los tuyos.<br>
_______________________________________________<br>
Jde-developers mailing list<br>
<a moz-do-not-send="true">Jde-developers@gsyc.es</a><br>
<a moz-do-not-send="true"
href="http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers"
target="_blank">http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers</a><br>
</blockquote>
</div>
<br>
<fieldset></fieldset>
<br>
<pre>_______________________________________________
Jde-developers mailing list
<a moz-do-not-send="true" href="mailto:Jde-developers@gsyc.es" target="_blank">Jde-developers@gsyc.es</a>
<a moz-do-not-send="true" href="http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers" target="_blank">http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers</a>
</pre>
</blockquote>
<br>
</div>
</div>
</div>
<br>
_______________________________________________<br>
Jde-developers mailing list<br>
<a moz-do-not-send="true"
href="mailto:Jde-developers@gsyc.es">Jde-developers@gsyc.es</a><br>
<a moz-do-not-send="true"
href="http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers"
target="_blank">http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/jde-developers</a><br>
<br>
</blockquote>
</div>
<br>
</div>
</blockquote>
<br>
</body>
</html>