Share via


Ontwikkelomgeving

U kunt toepassingen ontwikkelen voor Azure Sphere op Windows 11, Windows 10 Jubileumupdate (of hoger) of op een Linux-computer met Ubuntu 24.04 (pre-release), Ubuntu 22.04 LTS of Ubuntu 20.04 LTS. Als u Windows 11 gebruikt, gebruikt u de versie 22.02 (of hoger) van de Azure Sphere SDK.

  • Voor Windows installeert u de Windows SDK. U kunt Visual Studio, Visual Studio Code of de opdrachtregel gebruiken om toepassingen te bouwen, implementeren en fouten op te sporen in Windows.
  • Voor Linux installeert u de Linux-SDK. U kunt Visual Studio Code of de opdrachtregel gebruiken om toepassingen te bouwen, implementeren en fouten op te sporen in Linux.

De Azure Sphere SDK bevat de volgende belangrijke onderdelen:

  • Sysroots, die de bibliotheken, headerbestanden en hulpprogramma's bevatten die worden gebruikt voor het compileren en koppelen van een toepassing die is gericht op een bepaalde API-set.
  • Hardwaredefinities, die de hardwaremogelijkheden beschrijven die beschikbaar zijn op verschillende hardwareapparaten en kunnen worden gebruikt om deze op te geven in app-manifest.json bestanden.
  • CMakeFiles, waarmee de Azure Sphere-extensies voor CMake worden gedefinieerd.
  • De Azure Sphere Command-Line Interface (CLI).

De zelfstudies helpen u bij het bouwen en implementeren van uw eerste toepassing. We bieden ook een voorbeeldopslagplaats op GitHub met voorbeeldtoepassingen die laten zien hoe u Azure Sphere-hardware kunt programmeren en de API's kunt gebruiken.

Azure Sphere Application Runtime

De Azure Sphere Application Runtime biedt twee sets bibliotheken voor toepassingsontwikkeling op hoog niveau: de basis-API's en de applibs-API's. De basis-API's zijn gebaseerd op bibliotheken die niet uitsluitend zijn gericht op Azure Sphere-apparaten, terwijl de applibs-API's specifiek gericht zijn op Azure Sphere-apparaten. Toepassingen op hoog niveau die zijn gebouwd met de Azure Sphere SDK compileren en koppelen aan deze interfaces. Deze API's kunnen niet worden gebruikt in realtime compatibele toepassingen.

De headerbestanden voor de basis-API's worden geïnstalleerd in de mappen Sysroots\API set\usr\include van de Azure Sphere SDK-installatiemap. De headerbestanden voor de applibs-API's worden geïnstalleerd in de map Sysroots\API set\usr\include\applibs van de Azure Sphere SDK-installatiemap.

Tip

De standaardkopteksten van POSIX C bevinden zich in twee mappen: Sysroots\API set\usr\include voor algemene API-headers en Sysroots\API set\usr\include\sys voor systeemafhankelijke API-headers op laag niveau. U wordt aangeraden de algemene API's te gebruiken.

Tools

De Azure Sphere SDK bevat de Azure Sphere CLI voor het beheren van apparaten, het ontwikkelen en implementeren van toepassingen en het werken met cloudservices.

CMake biedt, samen met het lichtgewicht Ninja-buildhulpprogramma, buildcoördinatie voor Azure Sphere-toepassingen. Als u Visual Studio gebruikt, worden CMake en Ninja automatisch voor u geïnstalleerd. Als u Visual Studio Code of Azure Sphere CLI gebruikt, moet u deze zelf installeren op Windows of Linux.

Zowel Visual Studio als Visual Studio Code hebben Azure Sphere-extensies die de ontwikkeling van Azure Sphere-toepassingen vereenvoudigen. Met deze extensies kunt u uw Azure Sphere-toepassingen eenvoudig rechtstreeks vanuit de IDE bouwen, opsporen, testen en implementeren. Beide extensies bieden volledige ondersteuning voor de CMake-hulpprogramma's van Azure Sphere.

Containers

Azure Sphere biedt een container die de SDK in een zelfstandige Linux-omgeving verpakt. Door een container met een vooraf gedefinieerde buildomgeving te gebruiken, kunt u de stappen van het installeren (of verwijderen en vervolgens opnieuw installeren) van de juiste SDK-buildomgeving vermijden. U kunt de buildomgeving aanpassen aan uw eigen behoeften en die omgeving tegelijkertijd repliceren naar al uw hostcomputers met uniforme resultaten. Zie Containers gebruiken om Azure Sphere-apps te bouwen voor meer informatie. U kunt een container ook gebruiken als onderdeel van een doorlopend integratiescenario waarbij een build-pijplijn zoals GitHub Actions of Azure Pipelines uw toepassing automatisch opnieuw bouwt wanneer er een wijziging wordt aangebracht in de onderliggende code. Zie Continue integratie toevoegen aan uw containerbuilds voor meer informatie.

Wat is een container?

Containers zijn draagbare pakketten die worden geleverd met hun eigen lichtgewicht omgevingen die worden uitgevoerd op de kernel van een hostcomputer. Containers zijn lichtgewicht omdat ze gebruikmaken van gedeelde lagen. Deze lagen kunnen gedeelde segmenten van een besturingssysteem of gedeelde toepassingen zijn. Lagen voorkomt de overhead van een virtuele machine, die een volledig besturingssysteem en alle bijbehorende toepassingen bevat. Met delen kunnen containers klein zijn en snel worden opgestart.

U kunt containers downloaden uit een containerregister, zoals de Microsoft-artefactregister (MAR).

Wat containers naar Azure Sphere brengen

De container voor de Microsoft Azure Sphere SDK-buildomgeving biedt u een vooraf gemaakte ontwikkelomgeving. De container biedt het volgende:

  • De versie van Ubuntu Linux voor de huidige Azure Sphere-release
  • De huidige versie van de Azure Sphere SDK voor Linux
  • Aanvullende hulpprogramma's die nodig zijn voor de SDK, zoals CMake en Ninja

Azure Sphere maakt gebruik van Docker-containers die zijn geconfigureerd met Dockerfile-tekstbestanden . U kunt Dockerfiles maken die gebruikmaken van een basiscontainerinstallatiekopieën om een aangepaste container te maken voor het bouwen van Azure Sphere-toepassingen. Als u de aangepaste container uitvoert, wordt de meest recente basisinstallatiekopie gedownload als deze zich niet op uw hostcomputer bevindt, zo nodig de nieuwe aangepaste container bouwt, de opgegeven toepassing bouwt en wordt afgesloten. Vervolgens kunt u de uitvoer van de toepassingsbuild kopiëren naar een hostcomputer waarop de Azure Sphere SDK is geïnstalleerd en de toepassing sideloaden naar een apparaat. De aangepaste build-container wordt doorgaans niet interactief gebruikt, maar kan bijvoorbeeld zijn om buildproblemen vast te stellen.