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 &quot;pasos a seguir&quot; 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 &quot;trunk/&quot; 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">&lt;<a href="mailto:eperdices@gsyc.es" target="_blank">eperdices@gsyc.es</a>&gt;</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 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 href="mailto:DEBEMAIL=xxx@gsyc.es" target="_blank">DEBEMAIL=xxx@gsyc.es</a><br>
      DEBFULLNAME=&quot;Nombre Apellido&quot;<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 &#39;dirs&#39; 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 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 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 href="mailto:robotica@jderobot.org:debs-lucid" target="_blank">robotica@jderobot.org:debs-lucid</a><br>
      #scp */*.gz */*.dsc */*.changes <a 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>
          &gt; este mensaje va dirigido para Rober y Edu ya que me ha
          comentado José<br>
          &gt; María que fueron los que crearon los paquetes de JDErobot
          4.3, pero si<br>
          &gt; alguien más controla del tema y puede echarme un cable,
          genial :-).La<br>
          &gt; ayuda que solicito es básicamente si disponéis de los
          recursos<br>
          &gt; (manuales, tutoriales, ...) que utilizasteis, algún tipo
          de consejo o<br>
          &gt; 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>Jde-developers@gsyc.es</a><br>
          <a 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 href="mailto:Jde-developers@gsyc.es" target="_blank">Jde-developers@gsyc.es</a>
<a 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 href="mailto:Jde-developers@gsyc.es">Jde-developers@gsyc.es</a><br>
<a 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>