Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
gtkmm [Le 07/11/2018, 09:26] 46.226.132.2 [Installation] |
gtkmm [Le 11/09/2022, 12:09] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 4: | Ligne 4: | ||
=====Installation===== | =====Installation===== | ||
- | Pour installer les librairies de développement de gtkmm, il faut installer le paquet [[apt://libgtkmm-3.0-dev |libgtkmm-3.0-dev ]]. | + | Pour installer les librairies de développement de gtkmm, il faut installer le paquet [[apt>libgtkmm-3.0-dev]] (ou 2.4). |
- | Si vous le désirez vous pouvez installer la documentation (en anglais) en installant [[apt://libgtkmm-3.0-doc |libgtkmm-3.0-doc]]. Pour la lire, vous pouvez utiliser le programme [[apt://devhelp |devhelp]], ou simplement votre navigateur web préféré en vous rendant à l'adresse [[file:///usr/share/doc/libgtkmm-2.4-doc/docs/index.html]] | + | Si vous le désirez vous pouvez installer la documentation (en anglais) en installant [[apt>libgtkmm-3.0-doc]]. Pour la lire, vous pouvez utiliser le programme [[apt>devhelp]], ou simplement votre navigateur web préféré en vous rendant à l'adresse [[file:///usr/share/doc/libgtkmm-3.0-doc/docs/index.html]] |
=====Compilation===== | =====Compilation===== | ||
==== Avec g++ ==== | ==== Avec g++ ==== | ||
Pour compiler, vous devrez linker le projet en utilisant l'utilitaire pkg-config comme ci-dessous: | Pour compiler, vous devrez linker le projet en utilisant l'utilitaire pkg-config comme ci-dessous: | ||
- | <code>g++ fichier.cpp -o executable `pkg-config gtkmm-2.4 --cflags --libs` </code> | + | <code>g++ fichier.cpp -o executable `pkg-config gtkmm-3.0 --cflags --libs` </code> |
==== Avec l'IDE codeblocks ==== | ==== Avec l'IDE codeblocks ==== | ||
Ligne 17: | Ligne 17: | ||
* Créez un projet de type « console application » en C++ dans codeblocks. | * Créez un projet de type « console application » en C++ dans codeblocks. | ||
* Allez dans Project → Build options → Compiler settings → Other options, et collez-y ceci : | * Allez dans Project → Build options → Compiler settings → Other options, et collez-y ceci : | ||
- | <code>`pkg-config --cflags gtkmm-2.4`</code> | + | <code>`pkg-config --cflags gtkmm-3.0`</code> |
N.B. ; l'option pkg-config est entre "guillemets-accent-grave" ( = Alt-Gr + 7 ) | N.B. ; l'option pkg-config est entre "guillemets-accent-grave" ( = Alt-Gr + 7 ) | ||
* Allez dans Project → Build options → Linker settings → Other linker options, et collez-y ceci : | * Allez dans Project → Build options → Linker settings → Other linker options, et collez-y ceci : | ||
- | <code>`pkg-config --libs gtkmm-2.4`</code> | + | <code>`pkg-config --libs gtkmm-3.0`</code> |
* Entrez un code de base pour gtkmm : | * Entrez un code de base pour gtkmm : | ||
<code> | <code> | ||
#include <iostream> | #include <iostream> | ||
- | #include <gtkmm-2.4/gtkmm.h> | + | #include <gtkmm-3.0/gtkmm.h> |
int main(int argc, char *argv[]) | int main(int argc, char *argv[]) | ||
Ligne 37: | Ligne 37: | ||
* Vous pouvez maintenant écrire et compiler votre projet. Vous pouvez également l'enregistrer comme template : File → save project as user template. Vous pourrez ainsi créer directement dans codeblocks un nouveau projet utilisant gtkmm : File → New → Project → User templates. | * Vous pouvez maintenant écrire et compiler votre projet. Vous pouvez également l'enregistrer comme template : File → save project as user template. Vous pourrez ainsi créer directement dans codeblocks un nouveau projet utilisant gtkmm : File → New → Project → User templates. | ||
- | Bien sûr, cette démarche doit être adaptée à la version de gtkmm que vous utilisez. Les lignes ci-dessus ont été écrite pour le paquet **gtkmm-2.4**. Mais si vous avez installé le paquet **gtkmm-3.0**, elles doivent être naturellement adaptées de la façon suivante : | + | Bien sûr, cette démarche doit être adaptée à la version de gtkmm que vous utilisez. Les lignes ci-dessus ont été écrite pour le paquet **gtkmm-3.0**. Mais si vous avez installé le paquet **gtkmm-2.4**, elles doivent être naturellement adaptées de la façon suivante : |
* Créez un projet de type « console application » en C++ dans codeblocks. | * Créez un projet de type « console application » en C++ dans codeblocks. | ||
Ligne 64: | Ligne 64: | ||
- la première est que le numéro de version gtkmm n'est pas forcément le même que le numéro de version des paquets(cf. [[http://developer.gnome.org/gtkmm-tutorial/unstable/sec-install-unix-and-linux.html.fr#sec-linux-install-from-packages]] ). Si l'on constate des erreurs à la compilation, il peut être intéressant de tester la compilation pour des versions de numéro voisins. | - la première est que le numéro de version gtkmm n'est pas forcément le même que le numéro de version des paquets(cf. [[http://developer.gnome.org/gtkmm-tutorial/unstable/sec-install-unix-and-linux.html.fr#sec-linux-install-from-packages]] ). Si l'on constate des erreurs à la compilation, il peut être intéressant de tester la compilation pour des versions de numéro voisins. | ||
- | - la deuxième raison est que le numéro de la version de gtkmm qui correspond à ces programmes n'est pas inscrite dans les commentaires du code de ces programmes. Une fois ces programmes récupérés, si vous n'avez pas fait attention au numéro de version au moment où vous les avez récupérés, vous n'avez plus de moyens pour le retrouver. | + | - la deuxième raison est que le numéro de la version de gtkmm qui correspond à ces programmes n'est pas inscrite dans les commentaires du code de ces programmes. Une fois ces programmes récupérés, si vous n'avez pas fait attention au numéro de version au moment où vous les avez récupérés, vous n'avez plus de moyens pour le retrouver. |
Voici quelques conseils pour vous aider à récupérer la bonne version du code de ces programmes exemples. Nous supposons que vous avez installé **gtkmm 3.0** à partir du paquet synaptic d'Ubuntu. Notre objectif est donc d'obtenir la version 3.0 des programmes exemples. Ces programmes sont stockés sur le site [[http://git.gnome.org/browse/gtkmm-documentation/tree/examples/book]]. Ce site est un repository git. Il nous faut donc installer git pour y avoir facilement accès. | Voici quelques conseils pour vous aider à récupérer la bonne version du code de ces programmes exemples. Nous supposons que vous avez installé **gtkmm 3.0** à partir du paquet synaptic d'Ubuntu. Notre objectif est donc d'obtenir la version 3.0 des programmes exemples. Ces programmes sont stockés sur le site [[http://git.gnome.org/browse/gtkmm-documentation/tree/examples/book]]. Ce site est un repository git. Il nous faut donc installer git pour y avoir facilement accès. | ||
Ligne 86: | Ligne 86: | ||
* Ensuite on peut ajouter à notre projet **Codeblock** les fichiers sources du programme exemple (*.h et *.cc). Pour ce faire, allez dans Project → Add files recursively... et sélectionnez tous les fichiers sources du programme exemple qui vous sont proposés. | * Ensuite on peut ajouter à notre projet **Codeblock** les fichiers sources du programme exemple (*.h et *.cc). Pour ce faire, allez dans Project → Add files recursively... et sélectionnez tous les fichiers sources du programme exemple qui vous sont proposés. | ||
* Maintenant nous avons deux "main" ! Nous allons garder celui fourni par l'exemple "main.cc" et nous allons supprimer le main par défaut "main.cpp" en allant dans Project → Remove file... | * Maintenant nous avons deux "main" ! Nous allons garder celui fourni par l'exemple "main.cc" et nous allons supprimer le main par défaut "main.cpp" en allant dans Project → Remove file... | ||
- | * Maintenant on peut compiler et on espère qu'il n'y a plus d'erreurs ... | + | * Maintenant on peut compiler et on espère qu'il n'y a plus d'erreurs ... |
Ligne 93: | Ligne 93: | ||
==== Avec CMake ==== | ==== Avec CMake ==== | ||
[[http://www.cmake.org|Cmake]] est un programme permettant de simplifier la compilation en générant des makefiles. | [[http://www.cmake.org|Cmake]] est un programme permettant de simplifier la compilation en générant des makefiles. | ||
- | Pour utiliser gtkmm avec cmake, il faut procéder ainsi : | + | Pour utiliser gtkmm avec cmake, il faut procéder ainsi : |
<code>project(nom_du_projet) | <code>project(nom_du_projet) | ||
cmake_minimum_required(VERSION 2.6) | cmake_minimum_required(VERSION 2.6) | ||
find_package(PkgConfig) | find_package(PkgConfig) | ||
- | pkg_check_modules(GTKMM gtkmm-2.4 ) | + | pkg_check_modules(GTKMM gtkmm-3.0 ) |
link_directories( | link_directories( | ||
Ligne 121: | Ligne 121: | ||
[[http://www.gtkmm.org/documentation.shtml|La documentation officielle (en anglais)]] | [[http://www.gtkmm.org/documentation.shtml|La documentation officielle (en anglais)]] | ||
- | [[http://www.gtkmm.org/docs/gtkmm-2.4/docs/tutorial/pdf/programming-with-gtkmm.pdf|Le livre en ligne "Programming with gtkmm"]] ([[http://www.gtkmm.org/docs/gtkmm-2.4/docs/tutorial/html/index.html|aussi disponible en html]]) | + | [[http://www.gtkmm.org/docs/gtkmm-3.0/docs/tutorial/pdf/programming-with-gtkmm.pdf|Le livre en ligne "Programming with gtkmm"]] ([[http://www.gtkmm.org/docs/gtkmm-3.0/docs/tutorial/html/index.html|aussi disponible en html]]) |
[[http://www.siteduzero.com/tutoriel-3-277422-creer-des-interfaces-graphiques-en-c-avec-gtkmm.html#part_277420|Tutoriel en français sur "Le Site du Zéro"]] | [[http://www.siteduzero.com/tutoriel-3-277422-creer-des-interfaces-graphiques-en-c-avec-gtkmm.html#part_277420|Tutoriel en français sur "Le Site du Zéro"]] | ||
---- | ---- | ||
//Contributeurs : [[utilisateurs:geenux|Geenux]], [[utilisateurs:bsaleil|bsaleil]]// | //Contributeurs : [[utilisateurs:geenux|Geenux]], [[utilisateurs:bsaleil|bsaleil]]// |