Tabla de contenido:

Desenvolvendo Aplicações Remotamente Para a Dragonboard 410c Usando IDE Eclipse: 17 Pasos
Desenvolvendo Aplicações Remotamente Para a Dragonboard 410c Usando IDE Eclipse: 17 Pasos

Video: Desenvolvendo Aplicações Remotamente Para a Dragonboard 410c Usando IDE Eclipse: 17 Pasos

Video: Desenvolvendo Aplicações Remotamente Para a Dragonboard 410c Usando IDE Eclipse: 17 Pasos
Video: Espressif RainMaker - Como criar um dispositivo IoT em menos de 10 minutos! 2024, Noviembre
Anonim
Desenvolvendo Aplicações Remotamente Para a Dragonboard 410c Usando IDE Eclipse
Desenvolvendo Aplicações Remotamente Para a Dragonboard 410c Usando IDE Eclipse

O objetivo deste documento é mostrar como etapas necesarias para configurar o ambiente de desenvolvimento, de modo que o HostPC (Computador / Notebook), através do IDE Eclipse compile os códigos e exporte para o Alvo (Dragonboard 410c) via SSH.

Paso 1: Pré Requisitos:

Hardware

  • (1) Computador / Notebook (HostPC)
  • (1) Dragonboard 410c (Alvo)

Software

  • IDE Eclipse CDT
  • Compilación cruzada (GCC Linaro)

Infra estrutura de rede

  • Red Wi-Fi disponível
  • Permissão para comunicação SSH na rede

Paso 2: Ambiente De Desenvolvimento:

Ambiente De Desenvolvimento
Ambiente De Desenvolvimento

Mesmo sendo posible desenvolver softwares de forma nativa, directamente en Dragonboard 410c (Plataforma Alvo), se recomienda usar um Computador / Notebook (HostPC) para desenvolvimento de sus aplicaciones.

Para esse guia estamos assumindo que Host está usando el sistema operativo Linux. No entanto, esse desenvolvimento pode ser feito em Microsoft Windows y Apple MacOS.

Paso 3: Cadena de herramientas:

Cadena de herramientas
Cadena de herramientas

Toolchain es un conjunto de ferramentas de programação usadas para gerar binários de softwares. Os elementos de uma Toolchain são:

  • Ensamblador
  • Compilador
  • Enlazador
  • Depurador
  • Bibliotecas en tiempo de ejecución
  • Utilidades

Tipos de Toolchain:

Nativo

Compilação para a mesma arquitetura onde is sendo gerado o binário da aplicação.

Compilación cruzada

Cross compile é um método utilizado para gerar ejecutáveis de software para diferentes arquiteturas de computadores. É usado quando una plataforma de desenvolvimento (Host) tem arquitetura diferente do alvo.

Paso 4: Configurando O Compilación cruzada No HostPC:

Configurando O Compilación cruzada No HostPC
Configurando O Compilación cruzada No HostPC

A Dragonboard 410c usa arquitetura ARM e para esse exemplo estamos considerando que o HostPC utiliza arquitetura arquitetura x86 ou x64. Como vimos na sessão anterior, Cross Compile é um método utilizado para gerar ejecutáveis de software para diferentes arquiteturas de computadores.

Descargar

HostPC Linux 32 Bits:

HostPC Linux 64 bits:

Instalação

Após a conclusão do download do cross-compile, o próximo paso é extrair os arquivos para algum diretório do sistema operacional. Para esse exemplo, estamos extraindo para o diretório "/ opt":

tar xf gcc-linaro-4.9-2016.02-x86_64_aarch64-linux-gnu.tar.xz -C / opt

Feito isso, temos o cross-compile establecido no HostPC:)

Paso 5: IDE Eclipse:

IDE Eclipse
IDE Eclipse

Eclipse é um IDE - Integrated Development Environment, ambiente de desenvolvimento integrado, que permite o desenvolvimento de softwares usando diferentes idiomas de programación.

Descarga e Instalação

Acesse https://www.eclipse.org e clique no botão Download, localizado no canto superior do site, em seguida faça download da versão compatível com seu host (computador / notebook).

Para iniciar una instalación, uma interfaz GUI con diferentes proyectos será iniciada. Seleccione una opción: Eclipse IDE para desarrolladores de C / C ++.

Paso 6: Criando Uma Aplicação E Transferindo Para Dragonboard 410c Via IDE Eclipse E SSH:

Criando Uma Aplicação E Transferindo Para Dragonboard 410c Via IDE Eclipse E SSH
Criando Uma Aplicação E Transferindo Para Dragonboard 410c Via IDE Eclipse E SSH

Os próximos passos são as etapas necessárias para criar um projeto de software usando Eclipse e portar esse código na Dragonboard 410c a través del protocolo SSH.

Primeiro passo é abrir o Eclipse:

./eclipse

Em seguida iremos criar um projeto ARM:

Archivo -> Nuevo -> Proyecto C

E preencher os campos:

  • Nombre del proyecto: helloworld
  • Tipo de proyecto: Proyecto Hello World ANSI C
  • Cadenas de herramientas: Cross GCC

Paso 7: Configurações Básicas Da Aplicação:

Configuraciones básicas de aplicación
Configuraciones básicas de aplicación

Como configurações básicas da aplicação são como seguintes informações:

  • Autor
  • aviso de copyright
  • Hola mundo saludo
  • Fuente

Haga clic en Siguiente.

Paso 8: Configuração De Deploy:

Configuração De Deploy
Configuração De Deploy

Para una configuración de Deploy vamos a seleccionar como opciones Debug e Release:

Seleccione una opción Seleccionar todo

Em seguida, clique em Siguiente.

Paso 9: Configuración de la compilación cruzada:

Configuração Do Cross Compile
Configuração Do Cross Compile

Una configuración de compilación cruzada sin Eclipse consiste en setar como información del prefijo del compilador cruzado e o en la cadena de herramientas.

  • Prefijo de compilador cruzado

    • HostPC de 32 bits: arm-linux-gnueabihf-
    • HostPC de 64 bits: aarch64-linux-gnu-
  • Sendero

    /opt/gcc-linaro-4.9-2016.02-x86_64_aarch64-linux-gnu/bin

Em seguida, clique em Siguiente.

Paso 10: Compilação Do Projeto:

Compilação Do Projeto
Compilação Do Projeto

Para compilar o projeto clique com botão direito na pasta do projeto, em seguida de seleccionar una opção Build Project.

Paso 11: Criando Conexão Com a Dragonboard (Parte 1)

Criando Conexão Com a Dragonboard (Parte 1)
Criando Conexão Com a Dragonboard (Parte 1)

Haga clic en el botón de dirección de la pasta para el proyecto y seleccione las opciones de ejecución de configuraciones.

Paso 12: Criando Conexão Com a Dragonboard (Parte 2)

Criando Conexão Com a Dragonboard (Parte 2)
Criando Conexão Com a Dragonboard (Parte 2)
Criando Conexão Com a Dragonboard (Parte 2)
Criando Conexão Com a Dragonboard (Parte 2)

Dê dois cliques na opção C / C ++ Remote Application, resultando na adição de uma nova configuração de projeto remoto.

Em seguida, em Connection selecciona una opción Remote Host.

Paso 13: Criando Conexão Com a Dragonboard (Parte 3)

Criando Conexão Com a Dragonboard (Parte 3)
Criando Conexão Com a Dragonboard (Parte 3)

Na sessão anterior criamos uma nova conexão, o próximo paso é configurar os parâmetros de conexão SSH:

  • Anfitrión
  • Usuario
  • Autenticación basada en contraseña

Paso 14: Criando Conexão Com a Dragonboard (Parte 4)

Criando Conexão Com a Dragonboard (Parte 4)
Criando Conexão Com a Dragonboard (Parte 4)
Criando Conexão Com a Dragonboard (Parte 4)
Criando Conexão Com a Dragonboard (Parte 4)

Nessa sessão, vamos a configurar o local de armazenamento dos códigos compilados. Essa configuração é feita quando clicamos na botão Browser.

Após clicar botão Browser, selecione o diretório onde deseja exportar os binários gerados.

Paso 15: Ejecutando una Aplicação Na Dragonboard 410c a través de Eclipse

Ejecutando una Aplicação Na Dragonboard 410c Via Eclipse
Ejecutando una Aplicação Na Dragonboard 410c Via Eclipse

Agora com tudo establecido, podemos ejecutar o proyectar remotamente, clicando em Run.

Paso 16: Resultado Da Compilação No Eclipse

Resultado Da Compilação No Eclipse
Resultado Da Compilação No Eclipse

O resultado no Eclipse é:

Último inicio de sesión: Vie 25 de noviembre 18:24:20 2016 desde 192.168.0.7

/ home / linaro / Documents / helloworld; salir de linaro @ linaro-alip: ~ $ / home / linaro / Documents / helloworld; salir !!! ¡¡¡Hola Mundo!!! cerrar sesión

Paso 17: Resultado Da Compilação Na Dragonboard 410c

Nas configurações da conexão entre o Eclipse (HostPC) e a Dragonboard 410c foi definido um diretório para armazenar os códigos binários gerados. Acesse esse diretório:

linaro @ linaro-alip: ~ $ cd / inicio / linaro / Documentos /

Em seguida, dê permissão de executionção para o binário gerado:

linaro @ linaro-alip: ~ $ chmod u + x holamundo

Ejecutar o binário:

linaro @ linaro-alip: ~ $./helloworld

!!! ¡¡¡Hola Mundo!!!

Recomendado: