volver a [[Tutorial de Yocto Project]] =====Crear Imagen para Atom E6xx ===== Este tutorial sirve para los kits SYS9402. En Yocto project recomiendan utilizar alguna de estas distribuciones Ubuntu, Fedora, openSUSE y CentOS, ademas también es necesario tener al menos 70gb libres y conexión a Internet para la creación de la imagen. === Configuración Previa=== Usar al bash como interprete de comandos: sudo dpkg-reconfigure dash y luego seleccionar la opción **NO** Instalo paquetes necesarios para la compilación: * Ubuntu sudo apt-get install sed wget cvs subversion git-core coreutils unzip texi2html texinfo libsdl1.2-dev docbook-utils gawk python-pysqlite2 diffstat help2man make gcc build-essential g++ desktop-file-utils chrpath libgl1-mesa-dev libglu1-mesa-dev mercurial autoconf automake groff libtool xterm * Fedora sudo yum groupinstall "development tools" sudo yum install python m4 make wget curl ftp hg tar bzip2 gzip unzip python-psyco perl texinfo texi2html diffstat openjade docbook-style-dsssl sed docbook-style-xsl docbook-dtds docbook-utils sed bc eglibc-devel ccache pcre pcre-devel quilt groff linuxdoc-tools patch linuxdoc-tools cmake help2man perl-ExtUtils-MakeMaker tcl-devel gettext chrpath ncurses apr SDL-devel mesa-libGL-devel mesa-libGLU-devel gnome-doc-utils autoconf automake libtool xterm para bajar tenemos que bajar una version de poky del yocto project ===Bajar poky[VERSION].tar.bz2=== wget http://downloads.yoctoproject.org/releases/yocto/yocto-1.2/poky-denzil-7.0.tar.bz2 [[http://www.yoctoproject.org/download/all?keys=&download_type=0&download_version=|Descargas yocto]] ===Descomprimir el paquete=== tar xvfj poky-denzil-7.0.tar.bz2 ===Bajar BSP=== wget http://downloads.yoctoproject.org/releases/yocto/yocto-1.2/machines/crownbay/crownbay-denzil-7.0.tar.bz2 Este Board Suport Package, es una Capa (Layer) que le podemos agregar a nuestro proyecto, esta capa tiene el soprte del porcesador Atom E6xx y Z6xx y placa de video integrada Embedded Media and Graphics Driver (EMGD) 1.10 ==Descomprimir el BSP== Lo vamos a descomprimir dentro de nuestra carpeta de trabajo por comodidad(no es necesario que este en ese lugar) tar xvfj crownbay-denzil-7.0.tar.bz2 -C ~/poky-denzil-7.0 ===Generar el entorno=== cd poky-denzil-7.0/ source oe-init-build-env Esto Nos reubico en ~/poky-denzil-7.0/build/ Ahora debemos editar dos archivos de configuración, están ubicados en la carpeta ~/poky-denzil-7.0/build/conf/ creada recientemente. ===Verificar que este la siguiente configuracion=== ==local.conf== ubicado en ~/poky-denzil-7.0/build/conf/local.conf BB_NUMBER_THREADS = "N" PARALLEL_MAKE = "-j N" N=cantidad de nucleos de la pc que va a compilar MACHINE ?= "crownbay" Para que cree una imagen para el nuestro equipo y utilizando el BSP LICENSE_FLAGS_WHITELIST = "license_emgd-driver-bin_1.10" por las licencias propietarias del BSP ==bblayer.conf== ubicado en ~/poky-denzil-7.0/build/conf/bblayer.conf en este archivo tenemos que agregar dos layers provistos por el BSP, que bajamos anteriormente y tenemos que poner su path completo en la seccion BBLAYER, debe quedar algo asi: LCONF_VERSION = "4" BBFILES ?= "" BBLAYERS ?= " \ /home/USUARIO/poky-denzil-7.0/meta \ /home/USUARIO/poky-denzil-7.0/meta-yocto \ /home/USUARIO/poky-denzil-7.0/meta-intel \ /home/USUARIO/poky-denzil-7.0/meta-intel/meta-crownbay \ " ===Compilar/crear la imagen=== cd .. bitbake core-image-sato bitbake descarga y compila el recipe que le indiquemos, al poner como recipe core-image-[minimal sato micro ...], el buildsystem va a resolver las dependencias del recipe bajar compilar, empaquetar y crear la imagen que seleccionamos. Este Proceso va a tardar mas de 2hs, y va a ocupar 50gb por lo menos, hay que tener en cuenta que tiene que bajar todas las fuentes de los programas que componen el sistema operativo y luego compilarlas.. ==Algunas Imagenes interesantes== * **core-image-minimal**: Por ahora la imagen mas chica, sin entorno gráfico sin soporte completo del hardware especifico * **core-image-base**: Imagen Sin entorno gráfico que soprta completamente el hardware del target. * **core-image-core**: Imagen con un entorno gráfico elemental * **core-image-sato**: Imagen con entono gráfico basado en Busybox con theme Sato, con reproductor, administrador de archivos, etc recomendable para sistemas touch [[http://www.yoctoproject.org/docs/1.1/poky-ref-manual/poky-ref-manual.html|Más información]] ===Cargamos La Imagen Creada=== Nuestras Imágenes se van a generar en: //~/poky-denzil-7.0/build/tmp/deploy/images// las que vamos a utilizar son las que terminan con extensión [[crear_imagen_para_atom_e6xx_sys9402#Disco Rigido|ext3]] para **Discos Rígidos** convencionales y [[crear_imagen_para_atom_e6xx_sys9402#Pendrive o SD|hddimg]] para memorias **SD** y **pendrives** ==Disco Rigido== Vamos a cargar la imagen en el supuesto 2do disco "b" y la 3er partición "3" **sdb3**, también se recomienda poner una partición swap del tamaño de la memoria ram, para particionar se puede utilizar el [[http://manual.aptosid.com/es/part-cfdisk-es.htm|cfdisk]] o alguna opción gráfica como el gparted **Primero Debemos Formatear una partición con formato ext3**(también se puede hacer con el gparted) sudo mkfs.ext3 /dev/sdb3 **montamos el disco y la imagen y copiamos su contenido** # mkdir /mnt/target # mkdir /mnt/target-ext3 # mount /dev/sdb3 /mnt/target # mount -o loop sudo mount ~/poky-denzil-7.0/build/tmp/deploy/images/core-image-sato-crownbay.ext3 /mnt/target-ext3 # cp -a /mnt/target-ext3/* /mnt/target **ahora instalamos el gestor de arranque** # grub-install --recheck --root-directory=/mnt/target /dev/sdb ahora creamos/editamos este archivo /mnt/target/boot/grub/grub.cfg set default="0" set timeout="30" menuentry 'Yocto SDK' { insmod part_msdos insmod ext2 set root='(hd0,msdos3)' linux /boot/bzImage root=/dev/sda3 } Desmontamos # umount /mnt/target # umount /mnt/target-ext3 ==Pendrive o SD== En este ejemplo vamos a utilizar el disco **sdc** montar el sistema operativo en un pendrive o memoria SD # dd if=~/poky-denzil-7.0/build/tmp/deploy/images/core-image-sato.hddimg of=/dev/sdc # sync # eject /dev/sdc Nota: hay que utilizar **sdc** NO sdc1 ==Datos Útiles == [[http://www.yoctoproject.org/docs/current/yocto-project-qs/yocto-project-qs.html| Documentación YoctoProject]] [[http://www.yoctoproject.org/download/bsp/intel-atom-processor-e660-intel-platform-controller-hub-eg20t-development-kit-2Intel AtomE660 BSP]] volver a [[Tutorial de Yocto Project]] --- //[[fespain@frba.utn.edu.ar|Francisco Espain]] 2012/10/01 20:29//