Partilhar via


Ambiente de desenvolvimento

Importante

Esta é a documentação do Azure Sphere (Legado). O Azure Sphere (Legado) será desativado em 27 de setembro de 2027 e os usuários devem migrar para o Azure Sphere (Integrado) até esse momento. Use o seletor de versão localizado acima do sumário para exibir a documentação do Azure Sphere (Integrado).

Você pode desenvolver aplicativos para o Azure Sphere no Windows 11, Atualização de Aniversário do Windows 10 (ou posterior) ou em uma máquina Linux executando o Ubuntu 24.04 (pré-lançamento), Ubuntu 22.04 LTS ou Ubuntu 20.04 LTS. Se você usa o Windows 11, use a versão 22.02 (ou posterior) do SDK do Azure Sphere.

  • Para Windows, instale o SDK do Windows. Você pode usar o Visual Studio, o Visual Studio Code ou a linha de comando para criar, implantar e depurar aplicativos no Windows.
  • Para Linux, instale o SDK do Linux. Você pode usar o Visual Studio Code ou a linha de comando para criar, implantar e depurar aplicativos no Linux.

O SDK do Azure Sphere inclui os seguintes componentes principais:

  • Sysroots, que contêm as bibliotecas, arquivos de cabeçalho e ferramentas usadas para compilar e vincular um aplicativo destinado a um determinado conjunto de APIs.
  • Definições de hardware, que descrevem os recursos de hardware disponíveis em vários dispositivos de hardware e podem ser usados para especificá-los em app-manifest.json arquivos.
  • CMakeFiles, que definem as extensões do Azure Sphere para CMake.
  • A CLI (Interface de Linha de Comando) do Azure Sphere.

Os tutoriais orientam você na criação e implantação do seu primeiro aplicativo. Também fornecemos um repositório de exemplos no GitHub que inclui aplicativos de exemplo que demonstram como programar o hardware do Azure Sphere e usar as APIs.

Azure Sphere Application Runtime

O Azure Sphere Application Runtime fornece dois conjuntos de bibliotecas para desenvolvimento de aplicativos de alto nível: as APIs base e as APIs applibs. As APIs base são baseadas em bibliotecas que não visam exclusivamente dispositivos do Azure Sphere, enquanto as APIs applibs visam especificamente dispositivos do Azure Sphere. Os aplicativos de alto nível criados com o SDK do Azure Sphere compilam e se vinculam a essas interfaces. Essas APIs não podem ser usadas em aplicativos com capacidade de tempo real.

Os arquivos de cabeçalho para as APIs base são instalados nas pastas Sysroots\API set\usr\include do diretório de instalação do SDK do Azure Sphere. Os arquivos de cabeçalho para as APIs applibs são instalados na pasta Sysroots\API set\usr\include\applibs do diretório de instalação do SDK do Azure Sphere.

Gorjeta

Os cabeçalhos padrão POSIX C estão localizados em duas pastas: Sysroots\API set\usr\include para cabeçalhos gerais de API e Sysroots\API set\usr\include\sys para cabeçalhos de API de baixo nível e dependentes do sistema. Recomendamos que você use as APIs gerais.

Ferramentas

O SDK do Azure Sphere inclui a CLI do Azure Sphere para gerenciar dispositivos, desenvolver e implantar aplicativos e trabalhar com serviços de nuvem.

O CMake, juntamente com o utilitário de compilação Ninja leve, fornece coordenação de compilação para aplicativos do Azure Sphere. Se você usa o Visual Studio, CMake e Ninja são instalados automaticamente para você. Se você usar o Visual Studio Code ou a CLI do Azure Sphere, deverá instalá-los você mesmo no Windows ou Linux.

O Visual Studio e o Visual Studio Code têm extensões do Azure Sphere que simplificam o desenvolvimento de aplicativos do Azure Sphere. Com essas extensões, você pode facilmente criar, depurar, testar e implantar seus aplicativos do Azure Sphere diretamente do IDE. Ambas as extensões têm suporte total para as ferramentas CMake do Azure Sphere.

Contentores

O Azure Sphere fornece um contêiner que empacota o SDK em um ambiente Linux autônomo. Usando um contêiner com um ambiente de compilação predefinido, você pode evitar as etapas de instalação (ou desinstalação e, em seguida, reinstalação) do ambiente de compilação SDK correto. Você pode modificar o ambiente de compilação para atender às suas próprias necessidades e replicar esse ambiente para todas as suas máquinas host ao mesmo tempo com resultados uniformes. Consulte Usar contêineres para criar aplicativos do Azure Sphere para obter detalhes. Você também pode usar um contêiner como parte de um cenário de integração contínua em que um pipeline de compilação, como Ações do GitHub ou Pipelines do Azure, recria automaticamente seu aplicativo sempre que uma alteração é feita no código subjacente. Consulte Adicionar integração contínua às suas compilações de contêiner para obter detalhes.

O que é um contentor?

Os contêineres são pacotes portáteis que vêm com seus próprios ambientes leves que são executados no kernel de uma máquina host. Os contêineres são leves porque usam camadas compartilhadas. Essas camadas podem ser fatias compartilhadas de um sistema operacional ou aplicativos compartilhados. As camadas evitam a sobrecarga de uma máquina virtual, que contém um sistema operacional inteiro e todos os aplicativos associados. O compartilhamento permite que os contêineres sejam pequenos e inicializem rapidamente.

Você pode baixar contêineres de um registro de contêiner, como o Microsoft Artifact Registry (MAR).

O que os contêineres trazem para o Azure Sphere

O contêiner para o ambiente de compilação do SDK do Microsoft Azure Sphere fornece um ambiente de desenvolvimento pré-criado. O contêiner fornece o seguinte:

  • A versão do Ubuntu Linux para a versão atual do Azure Sphere
  • A versão atual do SDK do Azure Sphere para Linux
  • Ferramentas adicionais necessárias para o SDK, como CMake e Ninja

O Azure Sphere usa contêineres do Docker configurados com arquivos de texto do Dockerfile . Você pode criar Dockerfiles que usam uma imagem de contêiner base para criar um contêiner personalizado para criar aplicativos do Azure Sphere. A execução do contêiner personalizado baixa a imagem base mais recente se ela não estiver em sua máquina host, cria o novo contêiner personalizado, se necessário, cria o aplicativo especificado e sai. Em seguida, você pode copiar a saída da compilação do aplicativo para uma máquina host que tenha o SDK do Azure Sphere instalado e fazer sideload do aplicativo para um dispositivo. O contêiner de compilação personalizado normalmente não é usado interativamente, mas pode ser, por exemplo, para diagnosticar problemas de compilação.