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

GTK+ avec C & C++ Discussion :

Comment installer et utiliser gtksourceviewmm


Sujet :

GTK+ avec C & C++

  1. #1
    Membre du Club Avatar de nant13
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 61
    Points : 43
    Points
    43
    Par défaut Comment installer et utiliser gtksourceviewmm

    Je voudrais installer et utiliser la lib gtksourceviewmm mais je n'y arrive pas!
    J'ai essayer de l'installer, mais quand je l'ajoute a mon projet comme ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #include "/usr/include/gtksourceviewmm-3.0/gtksourceviewmm.h"
    le compilateur me dit que le fichier gtksourceviewmm.h n'existe pas!
    Pourtant j'ai vérifier et il existe bien!

    Sinon j'utilise gnome-builder avec c++ et pour la compilation j'utilise meson.build avec ninja install

    Quand je crée un projet c++ avec gnome builder il y a un fichier .json avec les lien de téléchargement de toute les lib gtk c++
    ex:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
            {
                "name" : "gtkmm",
                "config-opts" : [ "--disable-documentation" ],
                "build-options" : { "cxxflags" : "-O2 -g -std=c++11" },
                "sources" : [
                    {
                        "type" : "archive",
                        "url" : "https://download.gnome.org/sources/gtkmm/3.24/gtkmm-3.24.1.tar.xz",
                        "sha256" : "ddfe42ed2458a20a34de252854bcf4b52d3f0c671c045f56b42aa27c7542d2fd"
                    }
                ]
            },
    Mais je ne sais pas comment dire a builder de compiler mon projet avec gtksourceviewmm, ni comment l'utiliser!

    Merci d’avance pour votre aide et votre temps
    Cookie : Anciennement petit gâteau sucré, qu'on acceptait avec plaisir. Aujourd'hui : petit fichier informatique drôlement salé, qu'il faut refuser avec véhémence.

    Mon projet GitHub: https://github.com/Swiftapp-hub/Swifty-Assistant

  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.

    Comme GtkSourceViewmm est un wrapper de GtkSourceView on peut peut-être se référer à ce dernier pour voir comment l’utiliser.

    https://developer.gnome.org/gtksourc...ble/intro.html

    À essayer...

  3. #3
    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
    Regarde le lien suivant pour voir comment ils utilisent l’inclure :

    https://developer.gnome.org/gtksourc...alization.html

  4. #4
    Membre du Club Avatar de nant13
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 61
    Points : 43
    Points
    43
    Par défaut
    Merci pour ta réponse rapide !!!
    Le problème est que je n'arrive pas a compiler!

    Voici a quoi ressemble mon fichier meson.build:
    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
    18
    19
    20
    21
    22
     
    scripto_sources = [
      'main.cpp',
      'home-window.cpp',
      'lib/baseUtils.cpp',
    ]
     
    scripto_deps = [
      dependency('gtkmm-3.0', version: '>= 3.18'),
    ]
     
    gnome = import('gnome')
     
    scripto_sources += gnome.compile_resources('scripto-resources',
      'scripto.gresource.xml',
      c_name: 'scripto'
    )
     
    executable('scripto', scripto_sources,
      dependencies: scripto_deps,
      install: true,
    )
    Il faudrait pas que je rajoute une dependency a gtksourceviewmm?

    Et pour installer gtksourceviewmm j'ai utiliser ce lien:
    https://ubuntu.pkgs.org/16.04/ubuntu..._i386.deb.html

    Je ne comprend pas pourquoi il me dit qu'il ne trouve pas le fichier alors que je le vois dans mon explorateur?
    Cookie : Anciennement petit gâteau sucré, qu'on acceptait avec plaisir. Aujourd'hui : petit fichier informatique drôlement salé, qu'il faut refuser avec véhémence.

    Mon projet GitHub: https://github.com/Swiftapp-hub/Swifty-Assistant

  5. #5
    Membre du Club Avatar de nant13
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 61
    Points : 43
    Points
    43
    Par défaut
    Regarde le lien suivant pour voir comment ils utilisent l’inclure :
    J'ai essayer de creer un projet en c et d'inclure:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #include <gtksourceview / gtksource.h>
    mais j'ai le même problème !

    J'ai l'IDE anjuta si tu sais mieux comment sa fonctionne avec?
    Cookie : Anciennement petit gâteau sucré, qu'on acceptait avec plaisir. Aujourd'hui : petit fichier informatique drôlement salé, qu'il faut refuser avec véhémence.

    Mon projet GitHub: https://github.com/Swiftapp-hub/Swifty-Assistant

  6. #6
    Membre du Club Avatar de nant13
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 61
    Points : 43
    Points
    43
    Par défaut
    Salut
    J'ai réussi a compiler avec l'IDE anjuta mais j'ai problème dans mon code.

    Ce code est sensé créer une fenêtre avec un gtksourceview dedans mais ça ne fonctionne pas:
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
     
    #include <gtkmm/main.h>
    #include <gtkmm/window.h>
    #include <gtkmm/builder.h>
    #include <gtksourceviewmm.h>
    #include <iostream>
     
    #include "config.h"
     
     
    #ifdef ENABLE_NLS
    #  include <libintl.h>
    #endif
     
     
     
    /* For testing propose use the local (not installed) ui file */
    /* #define UI_FILE PACKAGE_DATA_DIR"/ui/test.ui" */
    #define UI_FILE "src/test.ui"
     
     
    int
    main (int argc, char *argv[])
    {
    	Gsv::View *sView = new Gsv::View();
    	Gsv::LanguageManager *lm;
    	Glib::RefPtr<Gsv::Buffer> *sBuf = new Glib::RefPtr<Gsv::Buffer>();
    	Glib::RefPtr<Gsv::Language> *language = new Glib::RefPtr<Gsv::Language>();
     
    	Gtk::Main kit(argc, argv);
     
    	//Load the Glade file and instiate its widgets:
    	Glib::RefPtr<Gtk::Builder> builder;
    	builder = Gtk::Builder::create_from_file(UI_FILE);
    	Gtk::Window* main_win;
    	builder->get_widget("main_window", main_win);
     
    	sView->set_buffer(*sBuf);
     
    	main_win->add(*sView);
     
    	main_win->show_all ();
     
    	*language = lm->get_language("c"); //Problème
    	sBuf->set_language(*language); //Problème
     
    	kit.run(*main_win);
    	return 0;
    }
    Erreur ligne 21:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    'class Glib::RefPtr<Gsv::Buffer>' has not member named 'set_language'
    et si je la commente ça compile mais la fenêtre se ferme au moment au elle s'ouvre...

    Je ne vois pas ce qui ne va pas et en plus il n'y a aucun exemple de code sur internet !
    Quel qu’un a une idée ou un exemple ?
    Cookie : Anciennement petit gâteau sucré, qu'on acceptait avec plaisir. Aujourd'hui : petit fichier informatique drôlement salé, qu'il faut refuser avec véhémence.

    Mon projet GitHub: https://github.com/Swiftapp-hub/Swifty-Assistant

  7. #7
    Membre du Club Avatar de nant13
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 61
    Points : 43
    Points
    43
    Par défaut
    Bon, j'ai trouver !!!
    Voici le code qui fonctionne avec l'IDE anjuta:
    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
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
     
    #include <gtkmm/main.h>
    #include <gtkmm/window.h>
    #include <gtkmm/builder.h>
    #include <gtksourceviewmm.h>
    #include <iostream>
     
    #include "config.h"
     
     
    #ifdef ENABLE_NLS
    #  include <libintl.h>
    #endif
     
     
     
    /* For testing propose use the local (not installed) ui file */
    /* #define UI_FILE PACKAGE_DATA_DIR"/ui/test.ui" */
    #define UI_FILE "src/test.ui"
     
     
    int
    main (int argc, char *argv[])
    {	
    	Gtk::Main kit(argc, argv);
    	Gsv::init();
     
    	Gsv::View sView;
     
    	Glib::RefPtr<Gsv::LanguageManager> lm = Gsv::LanguageManager::get_default();
    	Glib::RefPtr<Gsv::Language> language = lm->get_language("cpp");
     
    	Glib::RefPtr<Gsv::Buffer> buf = Gsv::Buffer::create(language);
     
    	sView.set_source_buffer(buf);
     
    	sView.set_show_line_numbers();
    	sView.set_tab_width(4);
    	sView.set_auto_indent();
    	sView.set_show_right_margin();
    	sView.set_right_margin_position(80);
    	sView.set_smart_home_end(Gsv::SMART_HOME_END_ALWAYS);
     
    	//Load the Glade file and instiate its widgets:
    	Glib::RefPtr<Gtk::Builder> builder;
    	builder = Gtk::Builder::create_from_file(UI_FILE);
    	Gtk::Window* main_win;
    	builder->get_widget("main_window", main_win);
     
    	main_win->add(sView);
    	main_win->show_all();
     
    	kit.run(*main_win);
    	return 0;
    }
    Cookie : Anciennement petit gâteau sucré, qu'on acceptait avec plaisir. Aujourd'hui : petit fichier informatique drôlement salé, qu'il faut refuser avec véhémence.

    Mon projet GitHub: https://github.com/Swiftapp-hub/Swifty-Assistant

  8. #8
    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
    Content que tu es réussi.

    Désolé de ne pas avoir pu t'aider plus. Le travail m'empêche d'être sur mon PC.

    Une petite remarque. Si tu as réussi avec Anjuta cela indique deux choses :

    1. Les paquets dev pour GtkSourceViewmm sont biens installés,
    2. tu as un probléme de dépendance avec meson


    Je n'utilise pas meson mais il dit falloir je suppose ajouter gtksourceviewmm ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    scripto_deps = [
      dependency('gtkmm-3.0', version: '>= 3.18'),
    ]

  9. #9
    Membre du Club Avatar de nant13
    Homme Profil pro
    Étudiant
    Inscrit en
    Février 2020
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2020
    Messages : 61
    Points : 43
    Points
    43
    Par défaut
    Je n'utilise pas meson mais il dit falloir je suppose ajouter gtksourceviewmm ici :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    scripto_deps = [
      dependency('gtkmm-3.0', version: '>= 3.18'),
    ]
    J'ai essayer mais le compilateur m'a dit qu'il ne trouvait pas la dépendance
    Voila la dépendance que j'ai ajouter:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    scripto_deps = [
      dependency('gtkmm-3.0', version: '>= 3.18'),
      dependency('gtksourceviewmm-3.0', version: '>= 3.18'),
    ]
    Mais je trouve anjuta très bien fait donc je pense que je vais rester dessus !
    Cookie : Anciennement petit gâteau sucré, qu'on acceptait avec plaisir. Aujourd'hui : petit fichier informatique drôlement salé, qu'il faut refuser avec véhémence.

    Mon projet GitHub: https://github.com/Swiftapp-hub/Swifty-Assistant

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [Abbot] Comment installer et utiliser l'outil Abbot
    Par sofoot dans le forum Tests et Performance
    Réponses: 1
    Dernier message: 25/05/2012, 09h55
  2. Réponses: 5
    Dernier message: 13/04/2011, 11h45
  3. Comment installer et utiliser feynmf
    Par clement.analogue dans le forum Débuter
    Réponses: 2
    Dernier message: 20/08/2009, 18h12
  4. Comment installer et utiliser PostgreSQL ?
    Par jamdinhe dans le forum PostgreSQL
    Réponses: 6
    Dernier message: 14/12/2006, 12h59

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