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 | ||
code_blocks [Le 26/02/2011, 22:09] 88.171.235.73 [Problème de lancement Code Blocks 10.05] |
code_blocks [Le 09/11/2022, 02:32] (Version actuelle) 109.215.68.127 Suppression ppa non suivi depuis début 2016. |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>développement IDE}} | + | {{tag>Xenial IDE programmation}} |
---- | ---- | ||
- | |||
{{ codeblock_icon.jpg}} | {{ codeblock_icon.jpg}} | ||
- | |||
====== Code::Blocks ====== | ====== Code::Blocks ====== | ||
- | |||
**Code::Blocks** est un [[wpfr>Environnement_de_développement_intégré|IDE]] (environnement de développement intégré, ou IDE en anglais) gratuit pour le développement en C/C++. Il est facilement configurable à l'aide d'extensions et est mis à jour quasi-quotidiennement. | **Code::Blocks** est un [[wpfr>Environnement_de_développement_intégré|IDE]] (environnement de développement intégré, ou IDE en anglais) gratuit pour le développement en C/C++. Il est facilement configurable à l'aide d'extensions et est mis à jour quasi-quotidiennement. | ||
Pour en savoir plus, rendez-vous sur [[http://www.codeblocks.org|le site officiel]]. | Pour en savoir plus, rendez-vous sur [[http://www.codeblocks.org|le site officiel]]. | ||
- | |||
- | |||
- | |||
==== Qu'est ce qu'un IDE ? ==== | ==== Qu'est ce qu'un IDE ? ==== | ||
- | |||
Un [[wpfr>Environnement_de_développement_intégré|IDE]] est un logiciel permettant au développeur d'écrire, compiler et déboguer son programme avec un seul logiciel. | Un [[wpfr>Environnement_de_développement_intégré|IDE]] est un logiciel permettant au développeur d'écrire, compiler et déboguer son programme avec un seul logiciel. | ||
Une alternative à l'utilisation d'un tel logiciel est le développement à l'aide d'un éditeur de texte suivi d'une compilation manuelle, et le débogage à l'aide de l'outil [[:gdb|GDB (GNUDeBugger)]]. | Une alternative à l'utilisation d'un tel logiciel est le développement à l'aide d'un éditeur de texte suivi d'une compilation manuelle, et le débogage à l'aide de l'outil [[:gdb|GDB (GNUDeBugger)]]. | ||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
- | |||
===== Installation ===== | ===== Installation ===== | ||
+ | Il suffit d'[[:tutoriel:comment_installer_un_paquet|installer les paquets]] **[[apt>codeblocks]]** et **[[apt>build-essential]]** | ||
- | ==== Installation par les dépôts officiels ==== | + | ==== Code::blocks en français ==== |
+ | <note help> | ||
+ | Afin d'obtenir un meilleur support, nous vous déconseillons d'activer la traduction française.</note> | ||
- | Il suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt://codeblocks|codeblocks]]**. (si vous utilisez Hardy il faut activer les Backports) | ||
- | [[http://packages.ubuntu.com/search?suite=default§ion=all&arch=any&searchon=names&keywords=codeblocks|Versions des dépôts officiels]]. | + | Tout d'abord, rendez vous sur [[https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks|le Launchpad de code:blocks]] |
- | ==== Installation par le dépôt LGP ==== | + | Connectez-vous ou créez un compte. |
- | [[:tutoriel:comment_modifier_sources_maj|Modifiez vos sources de mises à jour]] pour y rajouter le dépôt suivant : | + | Sélectionnez la langue française (cliquez sur "french") et téléchargez la traduction (cliquez sur "Download translation") |
- | | Ubuntu 10.10 // (maverick Meerkat)// | <file>deb http://lgp203.free.fr/ubuntu/ maverick universe</file> | | + | Dans format choisir "MO format" puis demander le téléchargement (cliquez sur "Request Download"). |
- | | Ubuntu 10.04 LTS // (Lucid Lynx)// | <file>deb http://lgp203.free.fr/ubuntu/ lucid universe</file> | | + | |
- | | Ubuntu 9.10 // (Karmic Koala)// | <file>deb http://lgp203.free.fr/ubuntu/ karmic universe</file> | | + | |
- | | Ubuntu 8.04 LTS //(Hardy Heron)// | <file>deb http://lgp203.free.fr/ubuntu/ hardy universe</file> | | + | |
- | Récupérez la clé publique du dépôt : | + | Vous devriez recevoir rapidement un mail avec un lien pour télécharger le fichier "fr_LC_MESSAGES_codeblocks.mo" |
- | wget -q http://lgp203.free.fr/public.key -O- | sudo apt-key add - | + | |
- | [[:tutoriel:comment_modifier_sources_maj#recharger_la_liste_des_paquets|rechargez la liste des paquets]], puis [[:tutoriel:comment_installer_un_paquet|installez le paquet]] **[[apt://codeblocks|codeblocks]]**. | + | Il faut alors créer le dossier qui accueillera la traduction: |
+ | <code>sudo mkdir -p /usr/share/codeblocks/locale/fr_FR</code> | ||
- | ==== Depuis un paquet .tar.gz ==== | + | Puis copier la traduction dans le dossier créé : |
+ | <code>sudo cp Téléchargements/fr_LC_MESSAGES_codeblocks.mo /usr/share/codeblocks/locale/fr_FR/</code> | ||
- | Installer le compilateur et le débuggeur en [[:tutoriel:comment_installer_un_paquet|installant les paquets]] ** [[apt://build-essential gdb|build-essential gdb]]**. | + | Enfin il faut donner le droit aux utilisateurs de la machine de lire le fichier: |
+ | <code>sudo chmod +r /usr/share/codeblocks/locale/fr_FR/fr_LC_MESSAGES_codeblocks.mo</code> | ||
- | Code::Blocks nécessite [[wxWidgets]] 2.8.x pour fonctionner correctement (dernière version de préférence). | + | Maintenant que notre fichier est en place il faut relancer Code::Blocks puis aller dans le menu: |
- | Maintenant il faut [[:tutoriel:comment_installer_un_paquet|installer]] les composants de wxWidgets disponibles dans le nouveau dépôt : | + | Settings -> Environment -> View, cochez la case "Internationalization" et sélectionner "French" |
- | **libwxgtk2.8-0 libwxgtk2.8-dev wx2.8-headers wx-common**. | + | |
- | <code>sudo apt-get install libwxgtk2.8-0 libwxgtk2.8-dev wx2.8-headers wx-common</code> | + | |
- | Il faut configurer wxWidgets 2.8 par défaut pour le système. | + | N'oublier pas de quitter le menu en cliquant sur valider, puis relancer Code::Blocks |
- | <code>sudo update-alternatives --config wx-config</code> | + | |
- | Tout est prêt pour accueillir Code::Blocks. Il faut l'installer soit comme précédemment | + | Maintenant votre Code::Blocks est en français ;-) |
- | + | ||
- | - Rendez-vous sur [[http://forums.codeblocks.org/index.php|le forum du site de Code::Blocks]]. | + | |
- | - Entrez dans la rubrique [[http://forums.codeblocks.org/index.php/board,20.0.html|Nightly builds]] et rendez-vous dans le sujet le plus récent pour y télécharger le paquet .tar.gz pour Ubuntu. | + | |
- | - Une fois le paquet téléchargé, [[:tutoriel:comment_installer_un_paquet|installez-le]]. | + | |
- | + | ||
- | Extraire le fichier .tar.gz. Il contient les différents paquets. Deux solutions se présentent alors : | + | |
- | - Installer Code::Blocks dans son intégralité (paquets optionnels compris) : <code>sudo dpkg -i /le/dossier/extrait/*.deb</code> | + | |
- | - Installer uniquement le paquet Code::Blocks sans les paquets optionnels. Il faut tout d'abord installer le paquet ''libcodeblocks0'' puis le paquet ''codeblock''. Pour installer les paquets optionnels par la suite, il faut commencer par le paquet ''libwxsmithlib0''. | + | |
- | + | ||
- | Code::Blocks est opérationnel. | + | |
- | + | ||
- | ===== Utiliser la bibliothèque GTK+ avec Code::blocks ===== | + | |
- | + | ||
- | <note tip>Notez que les dernières versions de Code::blocks gèrent nativement les projets GTK+, l'option étant disponible dans l'assistant de création d'un nouveau projets (//File -> New -> Project...//)</note> | + | |
- | + | ||
- | Pour créer un projet en GTK+, suivez les étapes suivantes : | + | |
- | + | ||
- | * [[:tutoriel:comment_installer_un_paquet|Installez les paquets]] **libgtk2.0-dev** et **build-essential** [[apt://libgtk2.0-dev,build-essential|{{apt.png}}]] | + | |
- | <code>sudo apt-get install libgtk2.0-dev build-essential</code> | + | |
- | + | ||
- | * Ouvrez un projet de type « console application » dans code::blocks | + | |
- | * Sous //Project -> Build options -> Compiler settings -> Other options//, collez ceci (avec les apostrophes) :<file>`pkg-config --cflags gtk+-2.0`</file> | + | |
- | + | ||
- | * Sous //Project -> Build options -> Linker settings -> Other linker options//, collez (avec les apostrophes) :<file>`pkg-config --libs gtk+-2.0`</file> | + | |
- | + | ||
- | * Rédigez un fichier **main.c** de base pour Gtk+ :<file>#include <stdlib.h> | + | |
- | #include <gtk/gtk.h> | + | |
- | int main(int argc, char **argv) | + | |
- | { | + | |
- | /* Initialisation de GTK+ */ | + | |
- | gtk_init(&argc, &argv); | + | |
- | /*fermeture de GTK+ (ligne ajoutée) */ | + | |
- | gtk_exit(EXIT_SUCCESS); | + | |
- | return EXIT_SUCCESS; | + | |
- | }</file> | + | |
- | + | ||
- | * Enregistrez ce fichier comme template : //File -> save project as user template// | + | |
- | * Fermez le projet sans l'enregistrer. | + | |
- | + | ||
- | Désormais, pour ouvrir un projet GTK+ sous code blocks, ouvrez un nouveau projet en choisissant le Template que vous avez créé dans « User Templates ». | + | |
- | + | ||
- | Maintenant vous pouvez développer avec la bibliothèque GTK+. | + | |
- | + | ||
- | Pour supprimer la console allez dans //Project -> Properties -> Build Target -> Select built Target Options -> Type// et choisissez GUI application. | + | |
- | + | ||
- | Pour contrôler votre code dans la console pendant l'exécution de votre application, faites la même chose mais à la place de GUI application choisissez Console application. | + | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ===== Compiler le C++ avec Code::blocks ===== | + | |
- | Pour cela vous devez installer ce paquet supplémentaire: [[apt://build-essential|build-essential]].(ou par terminal tapez apt-get install build-essential) | + | |
- | Dans le cas ou ça ne n'aboutisserait pas, entrez dans le terminal(Applications->Accessoires->Terminal) et taper sudo dpkg --configure -a | + | |
- | Attendez un peu et ça devrait marcher. | + | |
- | REMARQUES : On peut vous proposer de garder votre version actuelle de grub ou d'installer la nouvelle pendant le "dpkg configure", si vous ne voulez pas prendre de risques, gardez votre version actuelle. | + | |
- | + | ||
- | + | ||
- | ===== Code::blocks en français ===== | + | |
- | + | ||
- | <note help> | + | |
- | Afin d'obtenir un meilleur support, nous vous déconseillons d'activer la traduction française | + | |
- | </note> | + | |
- | + | ||
- | <note tip> | + | |
- | Vous devrez avoir un compte Launchpad (ou Ubuntu Single Sing On) pour continuer) | + | |
- | </note> | + | |
- | + | ||
- | tout d'abord, rendez vous sur [[https://translations.launchpad.net/codeblocks/trunk/+pots/codeblocks|le Launchpad de code:blocks]], sélectionnez la langue français (french) et cliquez | + | |
- | + | ||
- | Il faut alors créer les dossiers qui accueillerons la traduction. | + | |
- | sudo mkdir /usr/share/codeblocks/locale | + | |
- | sudo mkdir /usr/share/codeblocks/locale/fr_FR | + | |
- | + | ||
- | <note important>n'oublier pas de copier la traduction dans le dossier fr_FR : | + | |
- | + | ||
- | faite dans le dossier ou se trouve la traduction que vous avez telecharger : | + | |
- | <code>sudo cp fr_LC_MESSAGES_codeblocks.mo /usr/share/codeblocks/locale/fr_FR</code> | + | |
- | PS : chez moi il s'appeler fr_LC_MESSAGES... mais si il as un autre nom adapter la commande :-P . | + | |
- | + | ||
- | cordialement : abou_ahmed 8-) </note> | + | |
- | + | ||
- | Dans Setting -> Environment -> View, cochez la case Internationalization et sélectionner French. | + | |
- | + | ||
- | [[http://forum.ubuntu-fr.org/viewtopic.php?pid=2455575#p2455575|Merci à bwoharf pour cette information]] | + | |
+ | ===== Utilisation ===== | ||
+ | Lancez l'application comme indiqué [[:tutoriel:comment_lancer_application|ici]] ou via le [[:terminal]] (toutes [[:versions]] ou [[:variantes]] d'Ubuntu) avec la [[:commande_shell|commande]] suivante : <code>codeblocks</code> | ||
+ | |||
+ | ==== Compiler le C++ avec Code::blocks ==== | ||
+ | Pour cela vous devez installer ce paquet supplémentaire: [[apt>build-essential|build-essential]]. | ||
===== Problèmes ===== | ===== Problèmes ===== | ||
+ | ====Plantage et instabilité sous Ubuntu 16.04==== | ||
+ | Il faut aller dans Settings->Editor...->Code completion (à gauche en bas)->Symbols browser (onglet) et mettre une coche dans la case Disable symbols browser. | ||
- | ==== Problème avec la touche "espace" ==== | + | pour la nouvelle version : |
- | + | Settings -> Editor -> en bas du menus déroulant a gauche "Code completion" -> onglet "Symbols browser" -> une coche dans la case "disable symbole browser" | |
- | <note> | + | |
- | Dans certains cas, cela ne marche pas. Il faut alors désactiver le plugin Code Completion dans CodeBlocks.\\ | + | |
- | Il semble cependant que ce problème ait été résolu sous Ubuntu 10.04 LTS (et ultérieur)</note> | + | |
- | ** | + | |
- | Désactivation du plugin Code Completion:** \\ | + | |
- | Plugins -> Manage Plugins puis sélectionnez Code Completion et cliquez sur le bouton Disable | + | |
- | + | ||
- | == Sous Ubuntu 8.10 et ultérieurs == | + | |
- | + | ||
- | Pour Gnome : Système -> Préférences -> Clavier -> Agencements -> Options de l'agencement... -> "Utiliser la barre d'espacement peut insérer un espace insécable" | + | |
- | Choisir "La barre d'espacement renvoie une espace ordinaire à tous les niveaux". | + | |
- | + | ||
- | Pour Kde4 : Dans configurer votre systèmes -> Régions et langues -> Disposition du clavier. Activez la disposition et dans l'onglet expert, Utiliser la barre d'espacement pour insérer un espace insécable, cocher "La barre d'espacement renvoie un espace à tous les niveaux" | + | |
- | + | ||
- | == Sous Kubuntu 8.10 == | + | |
- | + | ||
- | Sous Intrepid Ibex (méthode testée sous kde4): | + | |
- | Dans le fichier **xorg.conf**: dans la **Section "InputDevice"** | + | |
- | remplacer la ligne <code>Option "XkbVariant" "oss"</code> | + | |
- | par <code>Option "XkbVariant" "latin9"</code> | + | |
- | et ajouter la ligne <code>Option "XkbOptions" "nbsp:none"</code> | + | |
- | Si vous n'avez pas de **Section "InputDevice"** ce qui est très probablement le cas sous Intrepid, il suffit juste de l'ajouter. | + | |
- | Voilà à quoi elle pourrait ressembler: | + | |
- | <code> | + | |
- | Section "InputDevice" | + | |
- | Identifier "Generic Keyboard" | + | |
- | Driver "kbd" | + | |
- | Option "XkbRules" "xorg" | + | |
- | Option "XkbModel" "pc105" | + | |
- | Option "XkbLayout" "fr" | + | |
- | Option "XkbVariant" "latin9" | + | |
- | Option "XkbOptions" "nbsp:none" | + | |
- | EndSection | + | |
- | </code> | + | |
- | Il ne vous reste plus qu'à redémarrer Xorg à l'aide des touches Ctrl+Alt+Backspace. | + | |
- | + | ||
- | == Sous Ubuntu 8.04 == | + | |
- | + | ||
- | Beaucoup d'utilisateurs rencontrent le même problème avec Codeblocks et Ubuntu 8.04. En effet la touche "espace" ne remplit pas son rôle et amène systématiquement à l'ouverture d'une liste pour l'autocompletion. | + | |
- | + | ||
- | Il va donc falloir modifier le fichier [[:tutoriel:comment_editer_un_fichier|xorg.conf]] | + | |
- | Tapez donc dans votre console: | + | |
- | + | ||
- | sudo nano /etc/X11/xorg.conf | + | |
- | + | ||
- | Cherchez la ligne ''Option "XkbVariant" "oss"'' et commentez la (Ajouter un # en début de ligne) | + | |
- | + | ||
- | ==== Problème de lancement Code Blocks 10.05==== | + | |
- | + | ||
- | Il se peut que codeblocks ne se lance pas. Si vous ouvrez codeblocks dans un terminal et qu'il vous renvoie : | + | |
- | + | ||
- | <code> | + | |
- | "codeblocks: relocation error: /usr/lib/libcodeblocks.so.0: symbol _Z18wxSafeConvertWX2MBPKw, version WXU_2.8 not defined in file libwx_baseu-2.8.so.0 with link time reference" | + | |
- | </code> | + | |
- | + | ||
- | rendez-vous sur le forum. Lancement de Code Blocks 10.05 [[http://forum.ubuntu-fr.org/viewtopic.php?pid=3687080#p3687080|Lancement de Code Blocks 10.05]] | + | |
==== Format d'un point d'arrêt non reconnu lors du déboggage ==== | ==== Format d'un point d'arrêt non reconnu lors du déboggage ==== | ||
Ligne 216: | Ligne 66: | ||
* **/home/user/C:B** : Le caractère ":" | * **/home/user/C:B** : Le caractère ":" | ||
+ | ==== Voir aussi ==== | ||
+ | * [[http://www.codeblocks.org/|Codeblocks site officiel]] | ||
+ | * [[wpfr>C++| Wikipedia langage C++]] | ||
+ | * [[wpfr>C_(langage) |Wikipedia langage C ]] | ||
---- | ---- | ||
- | //Contributeurs: ..., Vinc14, [[utilisateurs:Nementon]], tintou, [[:utilisateurs: Lifala]].// | + | //Contributeurs: ..., Vinc14, [[utilisateurs:Nementon]], |
+ | tintou, [[:utilisateurs: Lifala]], [[:utilisateurs: albanmartel]],.// |