# Création de blocs d'extensions aevc mBlock 5 Extension Builder

Voir [https://forum.makeblock.com/t/how-to-add-an-extension-for-mblock/2280](https://forum.makeblock.com/t/how-to-add-an-extension-for-mblock/2280)

Mblock est normalement installé dans `C:\ProgramData`

Sur mon PC il est installé dans `C:\Users\USER\mblock` (voir aussi dans `C:\Users\Public\Programs`

Les extensions sont installées dans : `C:\Users\USER\mblock\exts`

Les sources sont en JavaScript... Il faut trouver comment remonter aux sources C (fichiers .c et .h) qui appellent les librairies dont dépendent les blocs de programmation et définissent le code C équivalent à chaque bloc. A défaut, trouver si les fournisseurs de l'extensions ont mis le code source sur une forge logicielle publique.

### Création de nouveau bloc avec mBlock 5 Extension Builder

<div class="page-content clearfix" component="page-display" id="bkmrk-cr%C3%A9er-un-compte-sur-" option:page-display:page-id="341"><div class="page-content clearfix" component="page-display" option:page-display:page-id="341"><div dir="auto"><div style="clear: left;">  
</div>- Créer un compte sur [https://ext.mblock.cc/](https://ext.mblock.cc/)
- Une bonne documentation existe en Anglais : [https://www.yuque.com/makeblock-help-center-en/extension-builder](https://www.yuque.com/makeblock-help-center-en/extension-builder)
- Mais elle n'explique pas comment créer un bloc qui fait appel à une librairie externe non disponible dans mBlock. Voir prochain paragraphe -&gt; Maintenant si : [https://www.yuque.com/makeblock-help-center-en/extension-builder/arduino-add-third-party-library](https://www.yuque.com/makeblock-help-center-en/extension-builder/arduino-add-third-party-library)

</div></div></div>### Avec des librairies de dépendance

[https://support.makeblock.com/hc/en-us/articles/15264543414935-Example-Arduino-Add-a-Third-party-Library-for-an-Arduino-Extension](https://support.makeblock.com/hc/en-us/articles/15264543414935-Example-Arduino-Add-a-Third-party-Library-for-an-Arduino-Extension)

[https://www.yuque.com/makeblock-help-center-en/extension-builder/arduino-add-third-party-library](https://www.yuque.com/makeblock-help-center-en/extension-builder/arduino-add-third-party-library)

Pour inspiration, on importe une librairie existante :

[![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-04/scaled-1680-/1Ffimage.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-04/1Ffimage.png)

Pour créer une nouvelle librairie :

[![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-04/scaled-1680-/2a2image.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-04/2a2image.png)

[![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-04/scaled-1680-/MZHimage.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-04/MZHimage.png)

Scroller jusqu'en bas et importer un dossier `src` contenant les fichiers `.h` et `.cpp` de votre lib

[![image.png](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-04/scaled-1680-/IZ4image.png)](https://innovation.iha.unistra.fr/uploads/images/gallery/2025-04/IZ4image.png)

### Publier un block

[https://www.yuque.com/makeblock-help-center-en/extension-builder/how-to-publish](https://www.yuque.com/makeblock-help-center-en/extension-builder/how-to-publish)

[https://www.yuque.com/makeblock-help-center-en/extension-builder/publishing-criteria](https://www.yuque.com/makeblock-help-center-en/extension-builder/publishing-criteria)

### Sources

<div class="page-content clearfix" component="page-display" id="bkmrk-introduction-extensi" option:page-display:page-id="341"><div dir="auto">- Introduction Extension Builder et usage basique : [https://www.yuque.com/makeblock-help-center-en/extension-builder](https://www.yuque.com/makeblock-help-center-en/extension-builder)
- Comment ajouter un bloc qui fait appel à une librairie qui n'est pas dispo dans mBlock ? [https://support.makeblock.com/hc/en-us/articles/15264543414935-Example-Arduino-Add-a-Third-party-Library-for-an-Arduino-Extension](https://support.makeblock.com/hc/en-us/articles/15264543414935-Example-Arduino-Add-a-Third-party-Library-for-an-Arduino-Extension)

</div></div>