Hola!

El Sun, Sep 21, 2008 at 06:38:47PM -0400, Aldrin Martoq escribio:
> On Sun, 2008-09-21 at 11:30 -0400, Ismael Cantieri wrote:
> > Sin armar polemica y esperemos que tampoco guerra santa, navegando me
> > encontre con esta noticia que quiero compartir.
> > http://www.kroah.com/log/linux/lpc_2008_keynote.html
> > Parece ser un buen estudio, y si tiene fundamentos nos puede dar un aspecto
> > mejor de como se esta contribuyendo al código del kernel.
> 
> Yo no encuentro nada de malo que Canonical aporte un 0.1% al kernel, por las 
> siguientes razones:
> 
[...]

Buenas razones.

Para leer un poco de la respuesta (informal) de Matt Zimmerman (CTO de
Ubuntu en Canonical), en su blog:

 http://mdzlog.wordpress.com/2008/09/17/greg-kh-linux-ecosystem/

Además, al final de la conferencia de LPC hablaron con Greg'K-H y
resolvieron bastantes diferencias (por lo que he leido).

A todo esto, ¿alguién tendrá un enlace a la charla de bootear linux
en 5 segundos en un eee-pc?... me gustaría mirarla.

   Daniel.
From [EMAIL PROTECTED]  Sun Sep 21 22:36:05 2008
From: [EMAIL PROTECTED] (Daniel Serpell)
Date: Sun Sep 21 23:07:15 2008
Subject: Como crear una distro a la medida
In-Reply-To: <[EMAIL PROTECTED]>
References: <[EMAIL PROTECTED]>
        <[EMAIL PROTECTED]>
        <[EMAIL PROTECTED]>
Message-ID: <[EMAIL PROTECTED]>

Hola!

El Sun, Sep 21, 2008 at 05:38:55PM -0400, Rodrigo Fuentealba escribio:
> 
> El día 21 de septiembre de 2008 16:45, Carlos Manuel Duclos Vergara
> <[EMAIL PROTECTED]> escribió:
> >
> > Si estas interesado en ahorrar todos los bits posibles, saltate a un sistema
> > que no utilice glibc. Durante bastante tiempo utilice buildroot del proyecto
> > uclibc para construir sistemas embebidos y puedes generar sistemas en el
> > orden de 4 a 8 megas con mas o menos todo lo necesario. Por supuesto si
> > ademas quieres firefox + flash + ....
> 
> Pregunta: yo estoy interesado en hacer un sistema pequeñísimo (el
> disco completo es de 100 Mb) y estaba pensando en usar los
> repositorios de zipslack, portándolos a ARM. Pero veo que uclibc corre
> en ARM, ¿lo has probado? ¿funciona bien?
> 
> Eso, thanks.

En mi experiencia, si ya tienes 100M, mejor usar glibc, te ahorraras muchos
problemas.

Aquí, un sistema con libc6 completo con busybox 1.10 compilado con casi todos
los comandos, con dropbear para servidor de ssh y algunos programas propios:

 /home/daniel/arm/newHome$ du -sh
 6.6M    .

El problema de tener un sistema así, tan a la medida, es que tienes que estar
preparado para dar el soporte completo, perseguir parches de seguridad,
recompilar, etc.

En mi caso, ese sistema está basado en Debian etch (usa el paquete .deb de
glibc de Debian recortando lo que no se necesita con un script) más un kernel
específico (compilado sin soporte para el HW que no necesitamos).

Esto permite que si hay actualizaciones de libc, simplemente se instala el
nuevo paquete - compilar libc *no* es trivial. Y así con otras utilidades
pequeñas.

Otra opción que existe actualmente es Emdebian (www.emdebian.org),
ellos están tratando de automatizar el proceso de compilar los
paquetes de Debian utilizando compiladores cruzados y con scripts
que de manera automática recortan la documentación y otras cosas
que no son útiles en un sistema embebido. Y además, están intentando
compilar Debian usando uClibc, para un sistema más pequeño aún.

Lo mejor de emdebian es "apt-cross" y "dpkg-cross", los que permiten
instalar bibliotecas de compilación cruzada diréctamente desde
los paquetes de Debian nativos. Aquí, por ejemplo, tengo:

 $ dpkg -l | egrep 'arm(el)?-' 
 ii  binutils-arm-linux-gnueabi            2.18.1~cvs20080103-7       
 ii  cpp-4.3-arm-linux-gnueabi             4.3.1-9                    
 ii  g++-4.3-arm-linux-gnueabi             4.3.1-9                    
 ii  gcc-4.3-arm-linux-gnueabi             4.3.1-9                    
 ii  gcc-4.3-arm-linux-gnueabi-base        4.3.1-9                    
 ii  gcc-4.3-base-armel-cross              4.3.1-9                    
 ii  gdb-arm-linux-gnueabi                 6.8-3                      
 ii  libc6-armel-cross                     2.7-13                     
 ii  libc6-dev-armel-cross                 2.7-13                     
 ii  libfreetype6-dev-armel-cross          2.3.7-1                    
 ii  libgcc1-armel-cross                   1:4.3.1-9                  
 ii  libjpeg62-armel-cross                 6b-14                      
 ii  libjpeg62-dev-armel-cross             6b-14                      
 ii  libpng12-0-armel-cross                1.2.27-1                   
 ii  libsqlite3-0-armel-cross              3.5.9-3                    
 ii  libsqlite3-dev-armel-cross            3.5.9-3                    
 ii  libstdc++6-4.3-dev-armel-cross        4.3.1-9                    
 ii  libstdc++6-armel-cross                4.3.1-9                    
 ii  pngcrush-armel-cross                  1.6.7-1                    
 ii  pngmeta-armel-cross                   1.11-6                     
 ii  zlib1g-armel-cross                    1:1.2.3.3.dfsg-12          
 ii  zlib1g-dev-armel-cross                1:1.2.3.3.dfsg-12          

Con eso, puedo simplemente utilizar arm-linux-gnueabi-gcc como compilador
cruzado y disponer de todas esas bibliotecas.

Suerte!

    Daniel.

Responder a