top of page
Installation de code::blocks (exemple sous Windows)

Au 01/2026

1)

Chargez code::blocks (chez moi, version 25.03) sur le site : https://www.codeblocks.org/

Installez-le en suivant les instructions (normalement, avec le compilateur par défaut, mingW64).

2)

Chargez ECO (vous en aurez besoin plus tard), et le paquet « BIBLIO », contenant les bibliothèques que j'ai utilisé.

Vous pouvez charger GLEW ici : https://glew.sourceforge.net/

FMOD pour le son : http://www.fmod.org/ (FMOD STUDIO, version 2.3)

Freetype 2.14.1 pour les polices de caractères : : https://freetype.org/ et https://github.com/freetype/freetype/releases

3)

Organisez vos répertoires : je mets mes répertoires de programmes sous c:\Documents en les nommant ECO_2025, ECO_2026 (suivant l'année). Le répertoire BIBLIO, qui contient les liens pour glew, fmod (le son) et freetype (les polices), est placé dans ce répertoire (c'est ce qui va conditionner nos chemins, en relatif ou absolu ; je préciserais cela). J'ai donc :

c:\Documents

ECO_2026\

BIBLIO\

programme0

programme1

...

4)

Créez un premier projet code::blocks, qui servira à lier les fichiers systèmes :

Menu en haut à gauche File > New > Project

Une fenêtre s'ouvre. Il vous faut chercher votre environnement : pour moi se sera, tout en bas, Win32 Gui Project. Je sélectionne et valide > «Go».

On passe la fenêtre suivante > « Next »

Je sélectionne « Frame Based » (une fenêtre standard) et valide > « Next »

On me demande le Project Title : mettez « base ». Vérifiez que le chemin vers ECO_2026 est bien indiqué (utilisez les 3 petits points pour aller le chercher). Validez > « Next »

Une fenêtre indique que c'est le compilateur mingW64 (il faut), les cases « Debug » et « Release » sont sélectionnées. Validez > « Finish »

Pour ma part, j'ai un message d'alerte, script Warning. Cliquez et poursuivez.

Tout d'abord, passez votre programme en mode « Release » (ici « Debug »)

Puis « Compiler et Lancer » (l’icône engrenage + flèche ).

Vous devriez obtenir une petite fenêtre standard.

5)

Si vous êtes sous Windows, il faut ajouter GLEW. Allez dans le dossier BIBLIO/ ; récupérer glew32.dll dans le fichier bin/ et (copier-coller) mettez-le dans le répertoire de votre projet.

Dans code::blocks, nous allons devoir « linker » les bibliothèques associées (.lib) et chercher le dossier source (contenant les .h)

Dans le menu du haut, cliquez sur Project > Build options, une fenêtre similaire à celle-ci s'ouvre :

Veillez tout d'abord à ce que « base » (dans la colonne de gauche) soit surligné, et pas seulement Debug ou Release.

Cliquez sur l'onglet « Linker setting », vous verrez les premières lignes correspondantes à votre système.

Vous devez alors ajouter les deux lignes GLEW, en cliquant sur le bouton « Add » et en recherchant les fichiers (suivez mon chemin > c'était une bonne idée de faire comme moi :) ).

Code::Blocks vous demandera si vous voulez ajouter ces chemins en mode absolu ou relatif. Relatif signifie que les chemins seront cherchés par rapport à l'emplacement de votre programme. Ici c'est parfait : un nouveau programme pourra être créé simplement en copiant votre répertoire « base » et en en faisant une copie (et en le renommant), les liens suivront.

Pour tous : Ajoutez la ligne « libOpenGL32.a » (aidez vous de l'explorateur si le chemin est différent).

Passez maintenant à l'onglet « Search directories » pour avoir une fenêtre similaire à celle-ci :

Cette fois, en suivant la même méthode, ajoutez la ligne « ..mingw32\include » et « ..\Biblio\include » (ignorez pour l'instant la ligne « FMOD »).

Enfin, récupérez le main_windows.h dans le dossiers « BIBLIO » et copiez-le, remplacez le code du main.h de votre projet, par celui-ci (main_linux.h est disponible. Vous pouvez demander à une IA l'adaptation selon votre système).

Compilez, lancez, si vous n'avez rien oublié, une fenêtre avec un fond bleu clair devrait s'afficher. Vous venez d'ouvrir une fenêtre avec un contexte openGL.

Si un problème arrive, je vous suggère de noter l'erreur et de vous tourner, dans un premier temps, vers une IA qui saura vous aider.

Il y a aussi https://stackoverflow.com/ pour poser des questions techniques.

6)

Mettre en place un programme de base.

Il faut, cette fois, récupérer et placer le paquet « ECO » dans votre répertoire de programme, si ce n’est pas déjà fait. Récupérez aussi Tscene.h et Tscene.cpp, placez ceux-ci avec le main.cpp.

Si vous n'utilisez pas mes fichiers BIBLIO/, il faut aller chercher la bonne version de FMOD et de Freetype. Pour ce dernier, chargez le paquet pré-compilé et chargez aussi les sources : si ça ne marche pas, vous en aurez besoin.

Il faut aussi placer les dll de Glew et fmod dans le répertoire de votre programme.

Ajoutez les fichiers Tscene.h et Tscene.cpp au projet : cliquez avec le bouton droit de la souris sur le nom du projet (base), dans la colonne de gauche. Dans le menu popup qui s'ouvre, cliquez sur « Add files... »

Sélectionnez Tscene.h et Tscene.cpp.

De la même façon il va falloir aller chercher les fichiers présents selon l'image ci-dessous (eh oui, il faut un paquet de classes pour faire trois fois rien ! ). Ceci dit, pour lancer un nouveau projet, il vous suffira de faire un copier-coller du répertoire ; pas besoin donc de tout refaire à chaque fois.

Compilez et croisez les doigts. Probablement qu'un message « undefined reference... » va apparaître : vous avez oublié un fichier (.h et .cpp) Notez le nom du fichier et ajoutez-le (regardez dans la liste où il devrait être ! ).

C'est bon ? Alors lancez (engrenage + flèche) et voyez apparaître une fenêtre bleutée, avec un message : « appuyer sur f1 ». Cela jouera un son.

Arrivé là, vous avez les bases pour vous lancer dans les exemples du site.

Ça ne marche pas !

Fmod n'ayant jamais posé de problème, c'est sûrement du côté de freetype qu'il faut chercher.

Cas le plus fréquent : il y a des messages d'erreurs avec « png » dedans. La plupart des compilations freetype ont besoin de png.a et brotli.a (pas la version que je fourni).

Où trouver ces fichiers ? Du côté de msys2 : https://www.msys2.org/

Msys2 va charger les .a et include nécessaires (pour une installation native sous Linux, utilisez votre gestionnaire de paquets (ex : apt, pacman)).

Le principe : installer le programme (généralement sous C:\\Msys64). Avec une connexion internet, lancez le programme c:\msys64\mingw64.exe (dans le répertoire mys64).

Copiez ces lignes une à une et collez-les dans le prompt, lancez, installez.

pacman -S mingw-w64-x86_64-freetype

pacman -S mingw-w64-x86_64-libpng

pacman -S mingw-w64-i686-brotli

> parfois necessaire :

pacman -S mingw-w64-x86_64-zlib

 

Vous aurez alors les fichiers nécessaires dans le répertoire de Msys64 :

/mingw64/lib/ # pour les .a

/mingw64/include/ # pour les .h

 

Copiez les fichiers .a depuis /mingw64/lib/ vers BIBLIO/lib/, et le reste dans BIBLIO/include/

 

Reprenez les liens (depuis l'étape 4). Attention : il faut respecter l'ordre des liens pour freetype.a, en premier, puis png,a, puis libbrotlidec.a et enfin libbrotlicommon.a.

 

S'il reste des messages d'erreur, le mieux est, là encore, de vous tourner vers une IA.

J'ajouterais bientôt un tuto (janvier 2026) pour compiler les sources de freetype avec Cmake.

 

Ajout d'un fichier

Pour créer un nouveau fichier et l'ajouter à votre projet (comme le module Mdraw.cpp), ouvrez le menu File > New > File...

Gardez file dans la colonne de gauche, et cliquez sur l’icône « C/C++ source ».

Passez la page > « Next ».

Gardez « C++ » sélectionné > « Next »

Cliquez sur les trois points de la zone Filename (il faut aller chercher l'emplacement ou il va être créé) > entrez son nom dans la fenêtre de l'explorateur.

Cliquez sur le bouton « All » (le plus courant) et « Finish ».

Ajuster Code::blocks

Setting > Editor >

colonne de gauche : General Settings

Onglet « Editor Setting » : je préfère la fonte consolas en 10 points.

Onglet « Encoding settings » : sélectionnez UTF-8.

colonne de gauche : SpellChecker

J'ai désactivé les « Enable... », je trouve que les soulignements dans l’éditeur nuisent à la lisibilité.

Soufflez et ...

Si vous améliorez ce tuto ou corrigez une coquille, n’hésitez pas à me le signaler !

Compiler freetype avec Cmake-GUI

01/2026

 

Tout d'abord, récupérer Cmake :

Cmake GUI (plus simple, ce sera notre exemple) : https://cmake.org/ (ici version 4.2.1)

pour info, chez moi j'ai décompressé "cmake-4.2.1-windows-x86_64" vers c:/CMake (attention aux majuscules minuscules ! )

 

Cmake avec Msys2 (plus robuste, plus compliqué) : https://www.msys2.org/ (installez comme « ça ne marche pas ») et lancez la commande :

pacman -S --needed base-devel mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake

 

les sources de freetype : https://freetype.org/download.html (selon votre environnement et ne confondez pas avec les « binaries » )

 

 

Étape 1 - Vérifier le toolchain MinGW utilisé par Code::Blocks :

 

Ouvrez un terminal depuis l'invite de commande Windows (« Rechercher » en bas au centre de votre écran) : écrivez cmd.exe. une fenêtre s'ouvre avec une ligne : C:\Windows\System32> Oui ? Vous y êtes !

 

Entrez successivement ces deux commandes pour récupérer les emplacements respectifs : where gcc et where g++

where gcc permet de vérifier que le compilateur est accessible depuis le terminal.

 

Si where gcc ne renvoie rien écrivez : where /r "C:\Program Files" gcc.exe

Toujours rien ? Essayez : where /r C:\ gcc.exe

Si vous avez fait une installation standard de code::blocks, vous devriez obtenir : C:\Program Files\CodeBlocks\MinGW\bin\gcc.exe

Le principal étant de récupérer le chemin d'accès à gcc.exe et g++.exe

 

Si rien n’apparaît : Vérifiez que Code::Blocks est installé avec MinGW et redémarrez le terminal (sinon le cache reste en mémoire dans CMake. Voir aussi : menu > delete cache).

 

Étape 2 - Préparer les dossiers pour la compilation FreeType

 

Je vous suggère de créer un dossier directement à la racine : C:\freetype-src (par la décompression > entrez le nom à ce moment là). Il est ainsi facilement trouvable (et sera effacé ensuite).

Décompressez les sources de freetype dans ce dossier (attention à ne pas avoir c:/freetype-src/freetype/ ). Vous devez obtenir quelque chose comme :

C:\freetype-src\CMakeLists.txt

C:\freetype-src\src\

C:\freetype-src\include\

etc

 

Ajoutez un dossier séparé pour la compilation : C:\freetype-build

 

 

Étape 3 - Lancer CMake GUI et configurer les chemins

 

1) Tapez (dans la fenêtre cmd) set PATH=C:\Program Files\CodeBlocks\MinGW\bin;%PATH% (ce qui initialisera le chemin)

Cette commande permet de s’assurer que CMake utilise le bon compilateur (celui de Code::Blocks).

 

2) Vérifiez que gcc est connu (entrez) : gcc –version (il doit donner le chemin vers gcc. Ne vous inquiétez pas du reste)

Si la commande échoue, il faut revenir à l’étape 1 pour résoudre le problème.

 

3) Lancez CMake GUI depuis cette même fenêtre cmd en entrant (avec les guillemets) : "C:\CMake\bin\cmake-gui.exe" (en fonction du chemin vers votre cmake soit aussi : "C:\Program Files\CMake\bin\cmake-gui.exe" )

 

4) Dans CMake-gui ainsi ouvert, entrez les chemins (selon ce que vous avez fait)  :

 

Where is the source code : C:/freetype-src

Where to build the binaries : C:/freetype-build

 

Cliquez sur le bouton « Configure »

 

Une fenêtre s’ouvre pour choisir le générateur. Sélectionnez :

 

Générator : MingGW makefiles

Use default native compilers : laissez coché

 

Cliquez sur le bouton « Finish »

 

CMake va afficher des lignes en rouge (toutes chez moi !). Pas de panique.

 

 

Étape 4 - Régler les options CMake (dans CMake GUI)

 

1) Dans la liste des options, cochez les lignes suivantes :

 

FT_DISABLE_BZIP2

FT_DISABLE_HARFBUZZ

FT_DISABLE_PNG

FT_DISABLE_ZLIB

 

Décochez la case : FT_DYNAMIC_HARFBUZZ

 

Ces options désactivent des fonctionnalités optionnelles pour simplifier la compilation.

FT_DYNAMIC_HARFBUZZ est décochée car on n’utilise pas HarfBuzz dynamiquement.

 

Étape 5 - Générer

 

1) Cliquez sur le bouton « Configure »

 

2) Si des lignes restent rouges, vous pouvez néanmoins poursuivre. Ce sont souvent des avertissements et non des erreurs bloquantes.

Si la compilation devait échouer, reprenez jusque là et tournez vous, dans un premier temps, vers une IA.

 

3) Cliquez sur « Generate ».

 

4) Quand apparaît « generating done », nous sommes prêts à compiler FreeType.

 

 

Étape 6 - Compiler avec MinGW

 

1) Allez dans le dossier de build : cd C:\freetype-build

 

2) Lancez la compilation avec : mingw32-make

Cette commande lance la compilation proprement dite.

Si la compilation échoue, il faut vérifier les messages d’erreur (s'aider d'une IA) et revenir aux étapes précédentes.

 

Au bout de quelques minutes, un message « [ 100%] Built target freetype » doit apparaître.

 

 

Étape 7 - Récupérer les fichiers pour Code::Blocks

 

1) La bibliothèque statique se trouve dans le dossier de build : C:\freetype-build. Vous devriez y voir : libfreetype.a

Les headers sont dans le dossier source : C:\freetype-src\include

 

Je vous suggère de déplacer les fichiers en suivant le modèle de BIBLIO/ (voir « installation de code::blocks » ) soit libfreetype.a + le répertoire include

 

BIBLIO/

include/

ft2build.h

freetype/

freetype.h

...

lib/

glew32.lib

fmod_vc.lib

libfreetype.lib

 

Enfin : si une erreur survient, notez le message exact et consultez la documentation de CMake, un forum, ou un moteur de recherche. Les erreurs courantes sont souvent liées aux chemins incorrects ou aux dépendances manquantes.

 

Vous pouvez, après avoir vérifié que libfreetype.a fonctionne, supprimer les dossiers freetype-src et freetype-build (éventuellement cmake).

bottom of page