Ceci est une ancienne révision du document !



codeblock_icon.jpg

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.

Pour en savoir plus, rendez-vous sur le site officiel.

Qu'est ce qu'un IDE ?

Un 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 (GNUDeBugger).

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
Sous ubuntu 9.10 (et 9.04?) Code::Blocks est déjà dans les dépots, vous pouvez directement l'installer via Synaptic, , ou "sudo apt-get install codeblocks"

Code::Blocks repose sur wxWidgets. Par défaut, il n'est pas dans vos dépôts, vous pouvez l'ajouter en ajoutant le dépôt suivant à vos sources de mises à jour :

Ubuntu 7.10 (Gutsy Gibbon)
deb http://apt.wxwidgets.org/ gutsy-wx main
Ubuntu 8.04 (Hardy Heron)
deb http://apt.wxwidgets.org/ hardy-wx main

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 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é.

Il est possible qu'aucun lanceur n'ait été créé dans le menu Applications (ou menu K), il vous faudra le créer vous-même (la commande est tout simplement « codeblocks »).
Ce qui suit est valable pour l'installation des nightly builds1), mais depuis le 28 février une nouvelle version de Code::Blocks est sortie, bien plus facile à installer (lire le paragraphe ci-dessus).

Par dépôt (à partir du build 4405)

Modifiez vos sources de mises à jour pour y rajouter le dépôt suivant :

Ubuntu 8.04 (Hardy Heron)
deb http://lgp203.free.fr/ubuntu/ hardy universe
Ubuntu 7.10 (Gutsy Gibbon)
deb http://lgp203.free.fr/ubuntu/ gutsy universe
Ubuntu 7.04 (Feisty Fawn)
deb http://lgp203.free.fr/ubuntu/ feisty universe
Ubuntu 6.10 (Edgy Eft)
deb http://lgp203.free.fr/ubuntu/ edgy universe
Ubuntu 6.06 LTS (Dapper Drake)
deb http://lgp203.free.fr/ubuntu/ dapper universe
Ubuntu 9.10 (Karmic Koala)
deb http://lgp203.free.fr/ubuntu/ karmic universe

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:

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 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: et

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 Puis suivez ces instructions.

Depuis un paquet .tar.gz (à partir du build 4281)

Installer le compilateur et le débuggeur en 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.

Modifiez vos sources de mises à jour pour y rajouter les dépôts suivants :

Pour Edgy :

deb http://apt.tt-solutions.com/ubuntu/ edgy main

Pour Feisty :

deb http://apt.tt-solutions.com/ubuntu/ feisty main

Ajoutez la clé :

wget -q http://www.tt-solutions.com/vz/key.asc
sudo apt-key add key.asc

Maintenant il faut installer les composants de wxWidgets disponibles dans le nouveau dépôt : libwxgtk2.8-0 libwxgtk2.8-dev wx2.8-headers wx-common.

sudo apt-get install libwxgtk2.8-0 libwxgtk2.8-dev wx2.8-headers wx-common

Il faut configurer wxWidgets 2.8 par défaut pour le système.

sudo update-alternatives --config wx-config

Tout est prêt pour accueillir Code::Blocks. Il faut l'installer soit

Comme précédemment
  1. Entrez dans la rubrique Nightly builds et rendez-vous dans le sujet le plus récent pour y télécharger le paquet .tar.gz pour Ubuntu.
  2. Une fois le paquet téléchargé, installez-le.

Extraire le fichier .tar.gz. Il contient les différents paquets. Deux solutions se présentent alors :

  1. Installer Code::Blocks dans son intégralité (paquets optionnels compris) :
    sudo dpkg -i /le/dossier/extrait/*.deb
  2. 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.

  1. Entrez dans la rubrique Nightly builds et rendez-vous dans le sujet le plus récent pour y télécharger le paquet .deb pour Ubuntu.
  2. Une fois le paquet téléchargé, installez-le.
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.
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 : Paquet Code::Blocks précompilé pour Ubuntu
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…)

Pour créer un projet en GTK+, suivez les étapes suivantes :

sudo apt-get install libgtk2.0-dev build-essential
  • Ouvrez un projet de type « console application » dans code::blocks
  • Sous Project → Build options → Compiler settings → Other options, collez ceci (avec les apostrophes) :
    `pkg-config --cflags gtk+-2.0`
  • Sous Project → Build options → Linker settings → Other linker options, collez (avec les apostrophes) :
    `pkg-config --libs gtk+-2.0`
  • Rédigez un fichier main.c de base pour Gtk+ :
    #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; 
    }
  • 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.

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 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 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)

Sous Ubuntu 8.10 KDE4

Sous Intrepid Ibex (méthode testée sous kde4): Dans le fichier xorg.conf: dans la Section "InputDevice" remplacer la ligne

Option	     "XkbVariant"    "oss"

par

Option	     "XkbVariant"    "latin9"

et ajouter la ligne

Option         "XkbOptions"    "nbsp:none"

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:

Section "InputDevice"
	Identifier	"Generic Keyboard"
	Driver		"kbd"
	Option		"XkbRules"	"xorg"
	Option		"XkbModel"	"pc105"
	Option		"XkbLayout"	"fr"
	Option		"XkbVariant"	"latin9"
	Option          "XkbOptions"    "nbsp:none"
EndSection

Il ne vous reste plus qu'à redémarrer Xorg à l'aide des touches Ctrl+Alt+Backspace.

Dans certains cas, cela ne marche pas. Il faut alors désactiver le plugin Code Completion dans CodeBlocks

Désactivation du plugin Code Completion:
Plugins → Manage Plugins puis sélectionnez Code Completion et cliquez sur le bouton Disable

Ces solutions ont l'avantage de ne rien modifier dans le xorg.

Pour cela vous devez installer ce paquet supplémentaire: .

Merci à bwoharf pour cette information :

Voir le message sur le forum Ubuntu fr

Dans Setting → Environment → View, cochez la case Internationalization et sélectionner French.

Autres Solutions

Un paquet tout prêt disponible pour i386 et amd64, installable depuis le dépôt du site de pasgui : . Voir plus haut pour ajouter le dépôt.

Contributeurs: …, Vinc14, Nementon.


1)
Compilations nocturnes.
  • code_blocks.1275464178.txt.gz
  • Dernière modification: Le 18/04/2011, 14:57
  • (modification externe)