IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C Discussion :

Installation MSYS2 sur codeblocks


Sujet :

C

  1. #1
    Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Août 2021
    Messages
    52
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2021
    Messages : 52
    Points : 41
    Points
    41
    Par défaut Installation MSYS2 sur codeblocks
    Bonjour ;
    Je ne sais pas comment mettre MSYS2 sur codeblocks. Quelqu'un peut-t-il m'aider ?
    Cordialement

  2. #2
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    Bonjour.

    A force de voir des étudiants sous Windows utiliser Gtk+2 parce qu'ils ne trouvent/comprennent pas comment utiliser Gtk+3 voir Gtk+4 je me lance ici dans un petit tuto. Je vous avoue faire un effort. Windows 10 n'est pas mon système d'exploitation préféré .

    En préambule je précise qu'aucune installation d'un système de compilation n'a été faite.

    Pour commencer l'équipe de Gtk+ met à notre disposition une page dédiée à l'installation sous Windows : https://www.gtk.org/docs/installations/windows/. Autant s'en servir.

    Installation de MSYS2:

    J'ai téléchargé MSYS2 (msys2-x86_64-20210725.exe) puis installé en laissant tous les champs tels qu'ils étaient présentés. L'installation c'est donc effectuée dans c:\msys64.
    Après l'installation le lancement du shell n'a posé aucun problème. J'ai tout de suite mis à jour comme précisé sur la page officielle de MSYS2 avec la commande "pacman -Syu".

    Une fois l'installation des mises à jour effectuée je suis passé à la phase 2. J'ai lancé la commande "pacman -S --needed base-devel mingw-w64-x86_64-toolchain" comme toujours indiqué par le site officiel. Cette commande me propose de choisir entre différents outils de compilation. N'étant pas avare d'outils je décide de les installer tous. (~200Mo à télécharger).

    Installation des bibliothèques Gtk+

    Maintenant que MSYS2 intègre tous les outils nécessaires à une compilation, je reviens sur la page de Gtk+ qui m'indique comment les installer en tapant la commande "pacman -S mingw-w64-x86_64-gtk3" puis "pacman -S mingw-w64-x86_64-glade" pour celles et ceux qui désirent construire leur interface façon "wysiwyg". D'autres installations sont proposées pour Python.

    Code::Blocks

    Maintenant il ne me reste plus qu'à installer la dernière mouture de Code::Blocks v20.03. Je l'installe et le lance illico.

    Les ennuis commencent ici. Une première fenêtre apparaît pour me signifier qu'aucun compilateur n'a été trouvé ! C'est un comble, MSYS2 s'en est justement occupé. Passons cette fenêtre pour arriver sur l'interface principale. On va aller fouiller dans les menus de configuration pour voir comment spécifier un compilateur.

    Spécifier le compilateur :

    Il faut ouvrir la fenêtre depuis le menu "Settings->Compiler". Dans cette fenêtre il y a différents onglets dont "Toolchain executables". Cliquez dessus.
    Il faut spécifier le répertoire où se trouve les outils de compilation dans "Compiler's installation directory". Pour ma part, comme je n'ai rien changé lors de l'installation je spécifie "C:\msys64\mingw64\bin". Ce répertoire est important pour l'utilisation de Gtk+ aussi.
    Ensuite en dessous choisissez de nouveau le même répertoire pour la ligne correspondante à gcc. Vous pouvez répétez l'opération pour les autres outils de compilation si vous deviez les utiliser.

    Maintenant Code::Blocks peut compiler. C'est déjà çà .

    Compiler une application Gtk+ :

    Passons maintenant à l'étape finale. Compiler une application Gtk+.

    Histoire de voir ce que ca donne je crée un nouveau projet Gtk+ puisque Code::Blocks me le propose.
    Une première fenêtre me demande le nom du projet puis une seconde me demande où est situé Gtk+. Cette fenêtre nous aide à choisir en nous disant que c'est le répertoire qui contient le répertoire "include" et le répertoire "lib" dans lesquels il y a Gtk+. Chez moi c'est ici "C:\msys64\mingw64". Je sélectionne donc ce chemin. Mais malheureusement il n'en veut pas.

    Tant pis, on va faire autrement. On va configurer Code::Blocks de manière à ce qu'il intègre directement les bibliothèques Gtk+.

    Configurer Code::Blocks pour utiliser Gtk+ :

    On ouvre à nouveau la fenêtre "compiler settings". L'onglet "compiler flags" sélectionné en dessous il y a une rangée d'onglets. Sélectionnez l'onglet "Other compiler options". Dans la partie gauche copiez la ligne suivante :

    `pkg-config gtk+-3.0 --cflags`

    ATTENTION : les apostrophes n'en sont pas. C'est la combinaison Alt Gr + 7. Ils sont nécessaires.

    Dans l'onglet "Linker settings" copiez la ligne suivante dans la partie droite.

    `pkg-config gtk+-3.0 --libs`

    ATTENTION : les apostrophes n'en sont pas. C'est la combinaison Alt Gr + 7. Ils sont nécessaires.

    Validez en fermant la fenêtre.

    Premiers tests :

    Créez un projet en console. Choisissez le langage C. Dans le fichier source main.c remplacez le code source par celui-ci et tentez une compilation :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    #include <stdio.h>
    #include <stdlib.h>
    #include "gtk/gtk.h"
     
    int main(gint argc, gchar **argv)
    {
        gtk_init (&argc, &argv);
     
        GtkWidget *window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
        g_signal_connect (G_OBJECT (window), "destroy", G_CALLBACK (gtk_main_quit), NULL);
     
        gtk_widget_show_all (window);
     
        gtk_main ();
     
        return 0;
    }
    La compilation et l'exécution devrait fonctionner.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 18
    Points
    18
    Par défaut sous code block 17 08
    je l'ai fais sous code bloque 17 08 et ca marche pas dois-je utiliser le 20.03 j'avais bien sur télechargé il y a un moment

  4. #4
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    Qu'est-ce qui ne marche pas ?

    Effectivement la dernière version de Code::Blocks peut solutionner le problème qui "ne marche pas".

  5. #5
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 18
    Points
    18
    Par défaut en fait jai compris
    Merci monsieur, avant je créais toujours le programme avant d'entré les configuration se qui fait que quand j'essaie de compiler ca me met toujours une erreur car mon programme est toujours sous les configurations précédentes je crois bien avec le 20 c'est se qui se passe en tout cas... sinon des conseils a me donner en programmation sous linux ??

    j'ai ubuntu en dual boot mais il a de srx problemes un probleme d'affichage couplé a un probleme de dépendence impossible de faire une maj de 2 go je compte booté pour ré^parer le systeme ou juste supprimer et installer kali linux qui a toujours eté mon systeme de reve ^^
    c'est le sujet mais j'en profite mdr

  6. #6
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    Si tu es sous linux les choses sont "beaucoup plus simples".

    Une fois ton projet ouvert dans Code::Blocks tu vas dans le menu "Project->Properties...". Dans la fenêtre qui s'ouvre en bas à droite il y a un bouton "Project's build options...". Tu cliques dessus. La fenêtre qui s'ouvre te permets de voir/configurer le nécessaire pour compiler avec Gtk+.

    Dans cette fenêtre voila comment doit être configurer Gtk+ en fonction des onglets choisis :

    Pour les flags :
    Nom : flags.png
Affichages : 452
Taille : 37,9 Ko

    Pour les libs :
    Nom : libs.png
Affichages : 467
Taille : 49,8 Ko

  7. #7
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 18
    Points
    18
    Par défaut je crois que jai fait une gaffe
    bonsoir sorry vraiment du dérangement

    bah en fait techniquement bien avant tout ca j'utilisais gtk + 2 c'est quoi la différence étrangement j'ai voulu installer gtk+ 4 mais la manip ne marche plus en fait c'est étrange l' installation code block du 4 ne se base t-il pas sur le mm principe que le 3 ?? 80

  8. #8
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 18
    Points
    18
    Par défaut
    aussi j'arrive plus a compiler gtk 3 juste gtk 2...

  9. #9
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    Pour pouvoir utiliser les différentes bibliothèques il faut installer les paquets .dev correspondants. Ton souci vient peut-être de là.

  10. #10
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 18
    Points
    18
    Par défaut mauvaise impression
    en vrai lorsque j'ai crue avoir réussi j'avais juste compiler lancer sans compiler donc ca ma lancé mon ancien projet gtk+ 2

    sinon c'est vraiment important de migrer au 3 ou au 4 vous vous etes sous lequel lequel


    c'est quoi les machin dev ??

    mon ubuntu a un probleme lié au dépendance j'arrive plus a rien installer

  11. #11
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    Si tu commences un nouveau projet autant être sur la dernière mouture des bibliothèques utilisées. Maintenant tout dépend aussi du public visé. Si tu fais une application scientifique par exemple sachant que les utilisateurs ne pourront peut-être pas mettre à jour leur système d’exploitation, l’ordinateur étant administré par une personne tierce, alors tu dois utiliser la version adéquate.
    Si tu es débutant, pas d’hésitation, Gtk 4. Quitte à apprendre une bibliothèque, autant apprendre la dernière version.

    Pour les paquets sous Linux tu disposes d’un paquet qui contient la bibliothèque gtk4 : libgtk-4-0. C’est suffisant pour l’utiliser.
    Si tu désires compiler des applications utilisant cette même bibliothèque il te faut un paquet supplémentaire qui contient tous les fichiers header (les fichiers .h). Ces paquets se terminent en générale par «*dev*». Pour Gtk c’est le paquet libgtk-4-dev.

  12. #12
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 18
    Points
    18
    Par défaut oui
    merci pour l'info c'est vraiment plus facile avec linux on dirait bien vais devoir juste réparer les problemes dependence et paff

  13. #13
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 18
    Points
    18
    Par défaut
    sinon sur window ca me met aucun répertoire ou fichier de ce type

  14. #14
    Expert confirmé
    Avatar de gerald3d
    Homme Profil pro
    Conducteur de train
    Inscrit en
    Février 2008
    Messages
    2 291
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Conducteur de train
    Secteur : Transports

    Informations forums :
    Inscription : Février 2008
    Messages : 2 291
    Points : 4 941
    Points
    4 941
    Billets dans le blog
    5
    Par défaut
    As-tu bien suivi le tuto ci-dessus ?

  15. #15
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 18
    Points
    18
    Par défaut oui
    oui sauf la partie du compilateur car mon ide en a un

  16. #16
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2018
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 23
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2018
    Messages : 22
    Points : 18
    Points
    18
    Par défaut
    aussi je n'est pas toucher a l'etape creer une application gtk+

Discussions similaires

  1. Réponses: 18
    Dernier message: 13/04/2017, 20h47
  2. installer une bibliothèque sur codeblocks
    Par mimicha2000 dans le forum Bibliothèques
    Réponses: 0
    Dernier message: 04/04/2017, 17h02
  3. installation gtkmm sur codeblock
    Par ramalisy dans le forum Débuter
    Réponses: 4
    Dernier message: 21/08/2015, 16h44
  4. Réponses: 2
    Dernier message: 20/06/2014, 18h20
  5. [Kylix] Comment installer Kylix sur Mandrake 8.2 (page2)
    Par Philippe LE PONT dans le forum EDI
    Réponses: 3
    Dernier message: 01/05/2002, 12h52

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo