1 Comentário

Yocto Project: Quick Start

yocto project introdução
Este post faz parte da série Yocto Project. Leia também os outros posts da série:

Na primeira parte dessa série apresentamos os prós e contras ao se utilizar distribuições Linux prontas e customizadas, uma breve introdução sobre o Yocto Project, bem como suas características principais e seus diferenciais. Na segunda parte vimos em mais detalhes a arquitetura e conceitos e definições do Yocto Project. Nessa terceira parte faremos um Quick Start e demonstraremos na prática o uso dos conceitos apresentados.

Nesse Quick Start iremos gerar uma distribuição Linux embarcado com interface gráfica que será executada pelo emulador de hardware QEMU para arquiteturas ARM.

Preparando o Host

O Yocto Project suporta oficialmente as seguintes distribuições GNU/Linux como ambiente de construção:

  • Ubuntu 14.04, 14.10, 15.04, 15.10;
  • Fedora 21 e 22;
  • CentOS 6.x e 7.x;
  • Debian 7.x e 8.x;
  • openSUSE 13.2.

Para que ele execute no Host, alguns pacotes necessitam ser instalados.

Ubuntu e Debian:

Fedora:

openSUSE:

CentOS:

Montando o ambiente de construção

Neste tutorial iremos utilizar a versão mais recente do Yocto (krogoth) disponível. Após instalar os pacotes para o Host, vamos criar os diretórios e baixar os fontes necessários:

Agora vamos configurar o ambiente para gerarmos os artefatos de software:

Toda vez que desejarmos usar o Yocto em uma nova instância do shell devemos usar o comando "source" para que as variáveis de ambiente sejam devidamente configuradas.

Adicione as seguintes variáveis no arquivo ~/yocto/build-krogoth/conf/local.conf:

Note que configuramos nossa Distro como poky (DISTRO = "poky"), Machine como sendo a qemuarm (MACHINE = "qemuarm"), mudamos o diretório de download (DL_DIR = "${TOPDIR}/../dl") para podermos reutilizar os fontes baixados em outros projetos e iremos gerar pacotes para usarmos o opkg (PACKAGE_CLASSES = "package_ipk").

Na primeira vez que executamos o comando "source" acima o Yocto irá gerar o arquivo "~/yocto/build-krogoth/conf/bblayers.conf" com as camadas básicas, como podemos ver abaixo:

O arquivo bblayers.conf configura quais serão as camadas a serem consideradas pelo sistema de build.

Construindo a imagem

Vamos gerar uma imagem com interface gráfica mínima (core-image-sato) que utiliza o X11 como backend e GTK com o comando:

Esta é a configuração de build utilizada:

Ao final do processo receberemos uma mensagem semelhante a essa:

Executando a imagem com QEMU

Agora estamos prontos para rodar a imagem que geramos com QEMU para processadores ARM com o seguinte comando no mesmo shell que usamos para rodar o bitbake:

Se você desejar rodar o QEMU em outra instância do shell será necessário rodar o comando "source" utilizado anteriormente.

Ao executar o "runqemu" o script irá solicitar que entre com a senha de "root" e teremos a seguinte mensagem no terminal:

Após alguns instantes abrirá a tela do emulador e poderemos acompanhar o carregamento da imagem do sistema como ilustrado na figura 1.

Yocto quick start - Carregamento do QEMU
Figura 1 - Carregamento do QEMU.

Ao término teremos o sistema como apresentado na figura 2 e as aplicações disponíveis presentes na imagem como na figura 3.

Tela inicial da imagem Sato
Figura 2 - Tela inicial da imagem Sato.
Aplicativos presentes na imagem Sato
Figura 3 - Aplicativos presentes na imagem Sato.

Conclusão

Nessa última parte da série de Introdução ao Yocto Project vimos de maneira prática como gerar uma distribuição Linux embarcado com suporte à interface gráfica (X11 e GTK) para ser emulada no QEMU para processadores ARM.

Confira os diversos artigos publicados no site sobre o uso do Yocto Project para gerar diferentes tipos de distribuições para diversos tipos de placas. 

Outros artigos da série

<< Yocto Project: Definições e Conceitos
Licença Creative Commons Esta obra está licenciada com uma Licença Creative Commons Atribuição-CompartilhaIgual 4.0 Internacional.

Receba os melhores conteúdos sobre sistemas eletrônicos embarcados, dicas, tutoriais e promoções.

Linux Embarcado » Yocto Project: Quick Start
Comentários:
Notificações
Notificar
guest
1 Comentário
recentes
antigos mais votados
Inline Feedbacks
View all comments
Pedro Henrique Bertoleti
phfbertoleti
24/08/2016 02:06

Muito bom!

Talvez você goste:

Séries



Outros da Série

Menu

WEBINAR
 
Debugging
em Linux embarcado

 

Data: 30/09 às 19:30h - Apoio: Mouser Elecctronics
 
INSCREVA-SE AGORA »



 
close-link