Home Affairesvaldanylchuk/xcc700 : mini compilateur C pour esp32

valdanylchuk/xcc700 : mini compilateur C pour esp32

by Amélie Bernard

Publié le 26 décembre 2025 à 23h21. Un nouveau compilateur C, minimaliste et auto-hébergé, baptisé xcc700, a été développé pour les microcontrôleurs ESP32, mais peut également fonctionner sur des architectures plus classiques comme les Mac et les processeurs ARM.

  • xcc700 est conçu pour être facilement compréhensible et modifiable, offrant une base solide pour des projets personnalisés.
  • Il se distingue par sa petite taille et sa capacité à compiler directement sur l’ESP32, ouvrant la voie à des développements embarqués innovants.
  • Le projet est open source (licence MIT) et encourage les contributions de la communauté.

Ce compilateur, bien que rudimentaire, permet de créer des exécutables pour l’ESP32 directement sur la carte elle-même, une approche originale qui rappelle l’ère des ordinateurs personnels des années 1990. Il est capable de générer des fichiers ELF (Executable and Linkable Format) qui peuvent être exécutés via le composant ESP-IDF elf_loader, sans nécessiter de compilation croisée complexe.

Le développeur de xcc700 souligne que le projet est intentionnellement limité en termes de fonctionnalités. Il implémente uniquement les éléments essentiels du langage C (boucles while, instructions if/else, types de données de base, appels de fonctions) pour maintenir une base de code simple et accessible. Cette simplicité facilite l’adaptation du compilateur à différents environnements et permet aux développeurs de l’étendre facilement en ajoutant de nouvelles fonctionnalités.

Les performances de xcc700 sont modestes, atteignant environ 17 500 lignes de code par seconde sur un ESP32-S3 (contre 3 900 lignes/s lorsqu’il est auto-compilé). Cependant, l’objectif principal n’est pas la vitesse, mais plutôt la simplicité et la portabilité. Le compilateur est testé sur Mac x86_64 et ARM64, et peut être utilisé pour compiler du code pour l’ESP32 à partir de ces plateformes.

Plusieurs options sont disponibles pour utiliser xcc700 : compiler le code source avec gcc sur un ordinateur classique, compiler directement sur l’ESP32 en utilisant xtensa-gcc ou xcc700 lui-même, ou intégrer le code source directement dans un firmware existant. Une version précompilée est également disponible sur GitHub (16 Ko).

Le projet xcc700 est présenté comme une invitation à l’expérimentation et à la créativité. Le développeur encourage les hackathons, les cours et les tutoriels à utiliser ce compilateur comme base pour explorer le développement embarqué et la création de systèmes minimalistes. Il suggère également de se questionner sur la consommation énergétique des ordinateurs et la pertinence de logiciels complexes pour des tâches simples.

« De combien de watts avez-vous besoin pour faire des choses amusantes/utiles sur un ordinateur ? N’est-il pas agréable d’avoir des versions simples et conviviales d’applications courantes ? Avons-nous vraiment besoin de pilotes de souris de 300 Mo ? » s’interroge le créateur du projet, invitant à une réflexion sur l’efficacité et la simplicité dans le monde de l’informatique.

Le code source de xcc700 est disponible sous licence MIT, permettant une utilisation et une modification libres. Les contributions de la communauté sont les bienvenues, et le développeur est impatient de voir comment d’autres esprits créatifs pourront faire évoluer ce petit compilateur auto-hébergé.

You may also like

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.