286
Le logiciel R - Maˆ ıtriser le langage
p Rf_PrintValue(s) depuis la console de GDB. Notez que dans ce dernier
cas, il est possible que l’affichage du contenu de l’objet s dans la console
de R soit diff´ er´ e jusqu’au moment o` u R reprendra la main sur GDB.
6.6.4.1 D´ ebogage avec Emacs
Nous avons vu comment d´ eboguer du code `
a l’aide de GDB. Voyons comment
il est possible d’effectuer le mˆ eme genre d’op´ eration avec la combinaison des
logiciels Emacs (et son excellent module ESS, Emacs Speaks Statistics) et GDB.
Notez que vous devez avoir install´ e GDB comme cela est expliqu´ e en page 282.
Notez aussi que vous devrez avoir cr´ e´ e, depuis une fenˆ etre MS-Dos, le fichier
combn.dll avec des informations de d´ ebogage (flag -g) au moyen des commandes
suivantes :
g++ -g -c combn.cpp -o combn.o
g++ -shared -o combn.dll combn.o
Remarque
Sous Emacs, l’´ ecriture M-x signifie que vous devez utiliser la combinaison
simultan´ ee des touches ALT et X, tandis que C-x d´ esigne l’utilisation simultan´ ee des touches CTRL et X, alors que [RET] indique un retour chariot,
c’est-` a-dire l’appui sur la touche ENTR ´ EE (ou RETURN).
Pour cela, ouvrez Emacs (voir en page 282 pour l’adresse de t´ el´ echargement
de ce logiciel) puis ex´ ecutez les commandes qui suivent. Par exemple, la premi` ere ligne ci-dessous est effectu´ ee en tapant simultan´ ement ALT et X, puis R
(qui affichera M-x R dans le bandeau horizontal inf´ erieur d’Emacs), puis ENTR ´ EE
(qui affichera dans le bandeau inf´ erieur ESS [S(R): R (newest)] starting
data directory? ~/), puis encore ENTR ´ EE (qui aura pour effet de lancer R dans
Emacs).
M-x R [RET] [RET]
M-x gdb [RET] gdb -i=mi --annotate=3 [RET]
Votre fenˆ etre Emacs devrait alors ˆ etre s´ epar´ ee en deux, avec R en haut et
GDB en bas. Si ce n’est pas le cas, allez dans le menu File/Split Window
ou File/New Window Below (C-x 2), puis allez dans le menu Buffer pour s´ electionner * R\{ * } * .
Attention
La variable d’environnement syst` eme Path doit contenir l’entr´ ee
C:\Rtools\bin en premier, afin que la version de GDB appel´ ee soit la 7.4.
Précédent

- 319/701

Suivant