Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
code_blocks [Le 02/06/2010, 09:36]
ftarkin ancienne révision restaurée
code_blocks [Le 13/08/2019, 19:05] (Version actuelle)
90.13.215.188 [Plantage et instabilité sous Ubuntu 16.04]
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 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]].
Ligne 20: Ligne 18:
  
 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)]].
- 
- 
- 
- 
- 
- 
- 
- 
- 
  
  
Ligne 34: Ligne 23:
 ===== Installation ===== ===== Installation =====
  
-<note important>​Pour installer code block sur ubuntu 8.10 il n'est pas nécéssaire de modifier vos sources logiciel, vous pouvez directement passer à l'​installation de code block par le depot</​note>​ +==== Depuis les dépôts ​officiels ​====
-<note important>​Sous ubuntu 9.10 (et 9.04?) Code::​Blocks est déjà dans les dépots, vous pouvez directement [[:​tutoriel:​comment_installer_un_paquet|l'​installer]] via Synaptic, [[apt://​codeblocks|{{apt.png}}]],​ ou "sudo apt-get install codeblocks"</​note>​ +
- +
-Code::​Blocks repose sur wxWidgets. Par défaut, il n'est pas dans vos dépôts, vous pouvez l'​ajouter en [[tutoriel:​comment_modifier_sources_maj|ajoutant le dépôt]] suivant à vos sources de mises à jour : +
- +
-| Ubuntu 7.10 //(Gutsy Gibbon)// | <​file>​deb http://​apt.wxwidgets.org/​ gutsy-wx main</​file>​ | +
-| Ubuntu 8.04 //(Hardy Heron)// | <​file>​deb http://​apt.wxwidgets.org/​ hardy-wx main</​file>​ | +
- +
-Entrez dans la console la commande suivante pour récupérer la clé publique du dépôt wxWidgets : +
-  wget -q http://​apt.wxwidgets.org/​key.asc -O- | sudo apt-key add -  +
-Puis installez le packet libwxgtk2.8-0 via apt-get, les dépendances s'​installeront d'​elles-même : +
-  sudo apt-get install libwxgtk2.8-0 +
- +
- +
-Rendez-vous sur [[http://​www.codeblocks.org/​downloads/​5|la page des téléchargements de Code::​Blocks]] et téléchargez l'​archive qui correspond à votre version d'​Ubuntu (32 bits ou 64 bits). Décompressez-le et installez le paquet dont le nom commence par « libcodeblocks0 », pour la version 32 bits : +
-  sudo dpkg -i libcodeblocks0_8.02-0ubuntu1_i386.deb +
-puis le paquet dont le nom commence par « codeblocks_8.02 » (ici, toujours pour la version 32 bits) : +
-  sudo dpkg -i codeblocks_8.02-0ubuntu1_i386.deb +
- +
-//Astuce : commencez à taper le début du nom du fichier puis appuyez sur la touche tabulation.//​ +
- +
-Code::​Blocks est désormais installé. +
- +
-<​note>​Il est possible qu'​aucun lanceur n'ait été créé dans le menu //​Applications//​ (ou menu //K//), il vous faudra [[:​raccourcis-lanceur|le créer vous-même]] (la commande est tout simplement « codeblocks »).</​note>​ +
- +
- +
-<note important>​Ce qui suit est valable pour l'​installation des //nightly builds//​((Compilations nocturnes.)),​ mais depuis le 28 février une nouvelle version de Code::​Blocks est sortie, bien plus facile à installer (lire le paragraphe ci-dessus).</​note>​ +
- +
-==== Par dépôt (à partir du build 4405) ==== +
- +
-[[:​tutoriel:​comment_modifier_sources_maj|Modifiez vos sources de mises à jour]] pour y rajouter le dépôt suivant : +
-| Ubuntu 8.04 //(Hardy Heron)// | <​file>​deb http://​lgp203.free.fr/​ubuntu/​ hardy universe</​file>​ | +
-| Ubuntu 7.10 //(Gutsy Gibbon)// | <​file>​deb http://​lgp203.free.fr/​ubuntu/​ gutsy universe</​file>​ | +
-| Ubuntu 7.04 //(Feisty Fawn)// | <​file>​deb http://​lgp203.free.fr/​ubuntu/​ feisty universe</​file>​ | +
-| Ubuntu 6.10 //(Edgy Eft)// | <​file>​deb http://​lgp203.free.fr/​ubuntu/​ edgy universe</​file>​ | +
-| Ubuntu 6.06 LTS //(Dapper Drake)// | <​file>​deb http://​lgp203.free.fr/​ubuntu/​ dapper universe</​file>​ | +
-| Ubuntu 9.10 // (Karmic Koala)// | <​file>​deb http://​lgp203.free.fr/​ubuntu/​ karmic universe</​file>​ | +
- +
- +
-Récupérez la clé publique du dépôt : +
-  wget -q http://​lgp203.free.fr/​public.key -O- | sudo apt-key add - +
- +
-Mettez à jour les paquets puis installer codeblocks: [[apt://​codeblocks|{{apt.png}}]] +
- +
-Si ce lien renvoie une erreur en précisant que c'est un problème de dépendance de paquets, allez faire un tour sur cette page : [[:​wxwidgets#​depot_httpapt.wxwidgets.org|wxWidgets]] et suivez les instructions du paragraphe affiché (ajouter le dépot, ajouter la clé, faire un update). +
-Relancez la commande pour installer Code::​Blocks et ça devrait fonctionner. +
- +
-Après avoir installé Code::​Blocks,​ installez les paquets suivants:​[[apt://​codeblocks-contrib|{{apt.png}}]] et [[apt://​libwxsmithlib0|{{apt.png}}]] +
- +
-Code::​Blocks est opérationnel. +
- +
-Si toutefois celui-ci ne se lance pas, il se peut que vous n'ayez pas la bibliothèque graphique qu'il y a avec. Installez ce paquet [[apt://​libwxgtk2.8-0|{{apt.png}}]] +
-Puis [[http://​forums.codeblocks.org/​index.php?/​topic,​5956.msg45602.html#​msg45602|suivez ces instructions]]. +
- +
- +
-==== Depuis ​un paquet .tar.gz (à partir du build 4281) ==== +
- +
-Installer le compilateur et le débuggeur en [[:​tutoriel:​comment_installer_un_paquet|installant les paquets]] ** build-essential gdb**. +
- +
-Code::​Blocks nécessite [[wxWidgets]] 2.8.x pour fonctionner correctement (dernière version de préférence). +
- +
-Il faut ajouter le dépôt de wxWidgets car la dernière version n'est pas dans les dépôts+
- +
-[[:​tutoriel:​comment_modifier_sources_maj|Modifiez vos sources de mises à jour]] pour y rajouter les dépôts suivants : +
- +
-Pour Edgy : +
-<​code>​deb http://​apt.tt-solutions.com/​ubuntu/​ edgy main</​code>​ +
- +
-Pour Feisty : +
-<​code>​deb http://​apt.tt-solutions.com/​ubuntu/​ feisty main</​code>​ +
- +
-Ajoutez la clé : +
-<​code>​wget -q http://​www.tt-solutions.com/​vz/​key.asc</​code>​ +
-<​code>​sudo apt-key add key.asc</​code>​ +
- +
-Maintenant il faut [[:​tutoriel:​comment_installer_un_paquet|installer]] les composants de wxWidgets disponibles dans le nouveau dépôt : +
-**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. +
-<​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 == +
- +
-  - 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. +
- +
- +
-==== Depuis un paquet .deb (ancien - avant le build 4281) ==== +
- +
-Les anciens builds de Code::​Blocks sont compilés en un seul paquets .deb qui s'​installe comme suit. +
- +
-L'​application Code::​Blocks n'est pas encore disponible dans les dépôts, et de toute façon il faut télécharger une nouvelle version régulièrement pour que la majorité des bugs soient corrigés.  +
- +
-  - 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 .deb pour Ubuntu. +
-  - Une fois le paquet téléchargé,​ [[:​tutoriel:​comment_installer_un_paquet|installez-le]]. +
- +
-<​note>​Parfois le paquet n'est pas disponible car la mise à jour est récente et les développeurs n'ont pas eu le temps de le préparer. Prenez alors la version de la veille.</​note>​ +
- +
-<​note>​Si vous n'​arrivez pas à accéder au forum de Code::​Blocks pour télécharger le « .deb »,  vous trouverez sur le site ci dessous des paquets déjà précompilé pour Ubuntu (Dapper entre autre) et qui marche également sur Edgy et Feisty : +
- ​[[http://​developer.berlios.de/​project/​showfiles.php?​group_id=5358|Paquet Code::​Blocks précompilé pour Ubuntu]]</​note>​ +
- +
- +
- +
- +
- +
-===== 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. +
- +
-===== Problème avec la touche "​espace"​ ===== +
- +
- +
-== 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"​ +Il suffit d'[[:tutoriel:​comment_installer_un_paquet|installer les paquets]] **[[apt://​codeblocks|codeblocks]]** et **[[apt://​build-essential|build-essential]]**.
-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 Ubuntu 8.04 ==+==== Depuis le ppa ==== 
 +Il existe un [[:ppa]] fournissant la dernière version stable de **code::​blocks**.
  
-Beaucoup d'​utilisateurs rencontrent ​le même problème avec Codeblocks et Ubuntu 8.04En effet la touche "​espace"​ ne remplit pas son rôle et amène systématiquement à l'​ouverture d'​une ​liste pour l'​autocompletion.+  * [[:​ppa#​ajout_d_un_ppa_a_vos_sources_logicielles|Ajoutez ​le PPA]] **ppa:​damien-moore/​codeblocks-stable**((https://​launchpad.net/​~damien-moore/​+archive/​ubuntu/​codeblocks-stable)) dans vos sources de logiciels. 
 +  * [[:​tutoriel:​comment_modifier_sources_maj#​recharger_la_liste_des_paquets|Recharger ​la liste des paquets]] ;​ 
 +  * [[:​tutoriel:​comment_installer_un_paquet|Installez les paquets]] **[[apt>​codeblocks,​codeblocks-contrib|codeblocks codeblocks-contrib]]**.
  
-Il va donc falloir modifier le fichier [[:tutoriel:​comment_editer_un_fichier|xorg.conf]] +==== Code::blocks en français ==== 
-Tapez donc dans votre console:+
  
-  sudo nano /etc/​X11/​xorg.conf ​+<note help> 
 +Afin d'​obtenir un meilleur support, nous vous déconseillons d'​activer la traduction française.<​/note>
  
-Cherchez la ligne  ''​Option ​        "​XkbVariant" ​   "​oss"''​ et commentez la (Ajouter un # en début de ligne) 
  
-== Sous Ubuntu 8.10 KDE4 ==+Tout d'​abord,​ rendez vous sur [[https://​translations.launchpad.net/​codeblocks/​trunk/​+pots/​codeblocks|le Launchpad de code:​blocks]]
  
-Sous Intrepid Ibex (méthode testée sous kde4): +Connectez-vous ou créez un compte.
-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.+
  
-<​note>​ +Sélectionnez la langue française (cliquez sur "​french"​) ​et téléchargez la traduction (cliquez sur "​Download translation"​)
-Dans certains cas, cela ne marche pas. Il faut alors désactiver le plugin Code Completion dans CodeBlocks</​note>​  +
-** +
-Désactivation du plugin Code Completion:​** \\  +
-Plugins -> Manage Plugins puis sélectionnez Code Completion ​et cliquez sur le bouton Disable+
  
-<​note>​ +Dans format choisir "MO format"​ puis demander ​le téléchargement (cliquez sur "​Request Download"​).
-Ces solutions ont l'​avantage de ne rien modifier dans le xorg.</​note>​+
  
 +Vous devriez recevoir rapidement un mail avec un lien pour télécharger le fichier "​fr_LC_MESSAGES_codeblocks.mo"​
  
 +Il faut alors créer le dossier qui accueillera la traduction:
 +<​code>​sudo mkdir -p /​usr/​share/​codeblocks/​locale/​fr_FR</​code>​
  
 +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>​
  
 +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>​
  
-===== Compiler le C++ avec Code::blocks ===== +Maintenant que notre fichier est en place il faut relancer ​Code::Blocks puis aller dans le menu:
-Pour cela vous devez installer ce paquet supplémentaire:​ [[apt://​build-essential|{{apt.png}}]].+
  
 +Settings -> Environment -> View, cochez la case "​Internationalization"​ et sélectionner "​French"​
  
-===== Code::blocks en français ===== +N'​oublier pas de quitter le menu en cliquant sur valider, puis relancer ​Code::Blocks
  
 +Maintenant votre Code::​Blocks est en français ;-)
  
-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]].
  
-[[http://​forum.ubuntu-fr.org/​viewtopic.php?​pid=2455575#​p2455575|Voir le message sur le forum Ubuntu fr]] 
  
-Dans Setting -> Environment -> View, cochez la case Internationalization et sélectionner French. 
  
 +===== 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.
  
-==== Autres Solutions ​====+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"​ 
 +==== Format d'un point d'​arrêt non reconnu lors du déboggage ​====
  
-<note tip>Un paquet tout prêt disponible pour i386 et amd64, installable depuis le dépôt du site de [[http://lgp203.free.fr/|pasgui]] ​[[apt://​codeblocks-fr|{{apt.png}}]]. +Un caractère dans un nom de répertoire peut causer ce problème ​: 
-Voir [[http://​doc.ubuntu-fr.org/​code_blocks#​par_depot_a_partir_du_build_4405|plus haut]] pour ajouter le dépôt. +  * **/home/user/C:B** Le caractère ":"
-</​note>​+
  
 +==== Références ====
 +  * [[http://​www.codeblocks.org/​|Codeblocks site officiel]]
 +  * [[wpfr>​C++| Wikipedia langage C++]]
 +  * [[wpfr>​C_(langage) |Wikipedia langage C ]]
 ---- ----
-//​Contributeurs:​ ..., Vinc14, [[utilisateurs:​Nementon]].//​+//​Contributeurs:​ ..., Vinc14, [[utilisateurs:​Nementon]], tintou, [[:​utilisateurs:​ Lifala]], [[:​utilisateurs:​ albanmartel]],​.//
  • code_blocks.1275464178.txt.gz
  • Dernière modification: Le 18/04/2011, 14:57
  • (modification externe)