- CLion (gratuit avec compte étudiant JetBrains)
- Visual Studio (pour le dev sous Windows)
VS Code peut être utilisé mais je ne le recommande pas. Le tooling est assez mauvais.
Sous Linux et Mac c'est relativement facile. Sous Windows, avec WSL, c'est de même. En Windows natif c'est beaucoup moins agréable.
Dans le cadre des cours, je recommande WSL plutôt que des solutions natives comme Cygwin ou MinGW.
- Ouvrir un invite de commandes en administrateur via le menu Win+X
- Taper la commande
wsl --install
.
Note: WSL 2 utilise Hyper-V qui peut entrer en conflit avec certains logiciels d'anti-triche comme Vanguard. Vous pouvez repasser à WSL 1 avec la commande wsl --set-version Ubuntu 1
.
- Lancer Ubuntu depuis le menu Démarrer
- Choisir un nom d'utilisateur et un mot de passe (pour le compte Linux)
- Dans le terminal, taper la commande
sudo apt update && sudo apt -y install build-essential gdb cmake valgrind
sudo
va vous demander votre mot de passe. C'est normal qu'il ne s'affiche pas quand vous le tapez, c'est par sécurité !
- Aller ici
- Remplir le formulaire (ou bien se connecter avec GitHub si vous avez GitHub Student)
- Vérifier le compte par mail
- Télécharger la Toolbox depuis ici
- Dans la Toolbox, ouvrez les options
- Connectez-vous avec votre compte JetBrains
- Cochez "update tools automatically" et "keep only latest version"
5. Sortir des options puis installer CLion depuis la liste fournie
- Ouvrir CLion
- Créer un nouveau projet (File → New Project → C Executable) dans un dossier quelconque
- Ouvrir les paramètres de CLion, aller dans "Build → Toolchains" et ajouter WSL
4. Vérifier que tout est OK (autrement dit, que rien n'est rouge, et que WSL est en haut de la liste)
- S'il manque des trucs (CMake, GDB, etc), ouvrez un terminal WSL et faites
un coup d'`apt`, par exemple `sudo apt install cmake`.
- Fermer les options et lancer le projet avec le triangle vert en haut à droite
- Si le triange est grisé, essayer de relancer CMake
- Tenter de déboguer (le bouton à côté du triangle vert) le projet. *
Si en essayant de debug via GDB depuis CLion (ou même à la main) sur un WSL 1 ou 2 sous Ubuntu 22.04 et que vous avez une erreur du type impossible "cannot insert breakpoint 1" ou "opening /proc/PID/mem file ... failed".
Faites gdb -v
.
Si c'est 12.0, faites
echo -ne '\x90\x90' | sudo dd of=/usr/bin/gdb seek=$((0 x335bad)) bs=1 count=2
Si c'est 12.1, faites
echo -en '\x90\x90' | sudo dd of=/usr/bin/gdb count=2 bs=1 conv=notrunc seek=$((0x335C7D))
Normalement ça marche.