Installer COBOL sur Windows et lancer son premier programme

Objectif du jour

À la fin de ces 15-20 minutes, tu auras :

  • COBOL installé sur ta machine
  • Un environnement de travail fonctionnel
  • Ton premier programme COBOL exécuté

Comprendre ce qu’on installe

COBOL n’est pas un langage “moderne” au sens web.

  • Un compilateur COBOL
  • Un éditeur de code
  • Un terminal pour exécuter le programme

Installer COBOL selon ton système

Windows

  • Prends la version Windows
  • Installe avec les options variables d’environnements par défaut (Windows + R → tape sysdm.cpl)
Tu dois voir un chemin du style C:\dossier_cobol\bin\cobc.exe.
  • Vérifie l’installation en tapant la ligne de commande :
cobc -V

Si une version s’affiche → OK ✅

Ton premier programme COBOL

  • Crée un dossier et ouvre le dans ton IDE (Lien vers Visual Studio Code)
  • Crée un fichier hello.cob avec ce contenu :
       IDENTIFICATION DIVISION.
       PROGRAM-ID. HELLO.

       PROCEDURE DIVISION.
           DISPLAY "Bonjour, COBOL est prêt.".
           STOP RUN.
  • Compile :
    • La compilation te permet d’obtenir ton programme .exe. Un fichier hello.exe sera créé dans le répertoire du projet.
cobc -x hello.cob
  • Exécute sur PowerShell dans ton répertoire de projet :

Le résultat est bien présent mais il faut une amélioration tout de suite pour avoir un message accentué clair.

Erreurs possible :

Cobol a besoin de fichier pour compiler et je passage de la commande si dessous m’a permis d’avancer.

[Environment]::SetEnvironmentVariable(
  "COB_CONFIG_DIR",
  "C:\Program Files (x86)\GC32-BDB-SP1-cobol\config",
  "User"
)

Pour régler le problème de caractères accentués :

chcp 65001
.\hello.exe

Résultat :

Conclusion :

Voilà pour ce premier résultat.
Garde en tête que lorsque tu fermes PowerShell et que tu le rouvres pour exécuter à nouveau le programme, il est nécessaire de relancer la commande chcp 65001 afin que les caractères accentués soient correctement affichés.

Nous verrons comment automatiser cela lors de la prochaine journée.