CONNEXION
  • RetourJeux
    • Sorties
    • Hit Parade
    • Les + populaires
    • Les + attendus
    • Soluces
    • Tous les Jeux
    • Gaming
  • RetourActu Gaming
    • News
    • Astuces
    • Tests
    • Previews
    • Toute l'actu gaming
  • RetourBons plans
    • Bons plans
    • Bons plans Smartphone
    • Bons plans Hardware
    • Bons plans Image et Son
    • Bons plans Amazon
    • Bons plans Cdiscount
    • Bons plans Decathlon
    • Bons plans Fnac
    • Tous les Bons plans
  • RetourJVTech
    • Actus High-Tech
    • Intelligence Artificielle
    • Smartphones
    • Mobilité urbaine
    • Hardware
    • Image et son
    • Tutoriels
    • Tests produits High-Tech
    • Guides d'achat High-Tech
    • JVTech
  • RetourCulture
    • Actus Culture
    • Culture
  • RetourVidéos
    • A la une
    • Gaming Live
    • Vidéos Tests
    • Vidéos Previews
    • Gameplay
    • Trailers
    • Chroniques
    • Replay Web TV
    • Toutes les vidéos
  • RetourForums
    • Hardware PC
    • PS5
    • Switch 2
    • Xbox Series
    • Switch
    • Pokemon pocket
    • FC 25 Ultimate Team
    • League of Legends
    • Tous les Forums
  • PC
  • PS5
  • Xbox Series
  • Switch 2
  • PS4
  • One
  • Switch
  • iOS
  • Android
  • MMO
  • RPG
  • FPS
En ce moment Genshin Impact Valhalla Breath of the wild Animal Crossing GTA 5 Red dead 2
Liste des sujets

gdb emacs

Jarozse
Jarozse
Niveau 10
31 janvier 2005 à 12:59:07

Bonjour,

J´aurais deux questions à poser au sujet du débugger d´emacs.

Tout d´abord, je souhaiterais afficher le contenu de mes variables, avec la commande print, mais emacs me renvoie :

No symbol table is loaded. Use the " file" command.

Idem si je veux faire un point d´arrêt sur une ligne. S´il accepte sans problème les instructions du type

break fonction

Avec break line, il me renvoie le message d´erreur ci-dessus.

Comment il faut faire alors ?

Deuxiême question : lorsque je lance le programme, que ce soit dans la console ou dans le gdb, il me sort une Segmentation fault immédiatement, dans une certain fonction. En revanche, lorsque j´y vais pas à pas, avec un point d´arrêt sur la fonction en question, il ne plante pas, mais semble tourner à l´infini. Travaillant sur des tableaux, j´aurais pensé que l´erreur de segmentation apparaitrait lorsque j´atteint ou dépasse le bord. Est-ce logique de l´obtenir " à l´infini" ?

jarose
jarose
Niveau 10
31 janvier 2005 à 16:35:47

emacs c´est pour les pieuvres...
Pour gdb, déjà est-ce que tu as compilé en mode debug ?
Et dans ton cas c´est normal qu´il te sorte un seg fault après l´execution. Tu as tout un tas de commandes qui te permettent de cerner la provenance de l´erreur.

Pourquoi ce nick au fait ? il ressemble etrangement au mien...

Jarozse
Jarozse
Niveau 10
31 janvier 2005 à 16:52:30

" emacs c´est pour les pieuvres... "

:d) ? Pourquoi ? Qu´est-ce que tu veux dire ? D´ailleurs je n´ai que ça à ma disposition.

" Pour gdb, déjà est-ce que tu as compilé en mode debug ? "

:d) Oui.

" Et dans ton cas c´est normal qu´il te sorte un seg fault après l´execution."

:d) En quoi ?

" Tu as tout un tas de commandes qui te permettent de cerner la provenance de l´erreur. "

:d) Certes, mais lesquelles ? Et j´aimerais savoir également pourquoi les commandes emacs trouvées un peu partout sur le net ne marchent pas forcément, en particulier les prints ou les points d´arrêt sur une ligne.

" Pourquoi ce nick au fait ? il ressemble etrangement au mien..."

:d) Pourquoi ce nick ? Parce que lorsque j´ai tapé sur la mappemonde je suis tombé sur Jar..., une ville de Russie, puis sur Ecosse, et j´ai modifié pour éviter d´avoir 2 s.

jarose
jarose
Niveau 10
31 janvier 2005 à 17:26:27

Exemple basique:

$ cat > app.c

  1. include < stdio.h>

int main() {
printf(´:/\n´);
return 0;
}

$cc -g app.c -o app
$gdb . /app
( gdb) run core
Starting program: / home/(...)/app core
Program received signal SIGSEGV, Segmentation fault.
0x4007e98a in funlockfile ( ) from / lib/libc.so.6
( gdb) where

  1. 0 0x4007e98a in funlockfile ( ) from / lib/libc.so.6
  2. 1 0x40066e94 in vfprintf ( ) from / lib/libc.so.6
  3. 2 0x4006f8d2 in printf ( ) from / lib/libc.so.6
  4. 3 0x080483a0 in main ( ) at app.c:4

( gdb) quit

donc:

  1. 3 0x080483a0 in main ( ) at app.c:4 => printf(´:/\n´); => erreur d´adresse.

---

Pour emacs, je n´ai jamais apprit à l´utiliser.

Jarozse
Jarozse
Niveau 10
31 janvier 2005 à 17:54:36

Mmmm...soit. Je connaissais l´instruction where ( ou bt), je sais justement que l´erreur de segmentation est dans une fonction bien particulière, mais lors de l´exécution " pas à pas", je n´ai aucun problème, par contre il semble ne pas s´arrêter. D´où ma question.
De plus, cela m´aiderait beaucoup de pouvoir sortir le contenu des variables que j´utilise ( pour savoir où la fonction est en sur le tableau). Qu´est-ce que tu utilises comme commandes ? Parce que sur emacs c´est censé être print variable, mais il me renvoit un message d´erreur.

dnob700
dnob700
Niveau 10
31 janvier 2005 à 17:59:54

juste une question, si emacs n´est pas bon, qu´est ce qu´il faut utiliser ?

gollumkawder
gollumkawder
Niveau 10
31 janvier 2005 à 18:39:17

pas VI en tout cas !

[LoCkLeSs]
[LoCkLeSs]
Niveau 10
31 janvier 2005 à 18:53:45

Certains préfèrent VIM, mais en mode console ça me fais peur tout ça..

dnob700
dnob700
Niveau 10
31 janvier 2005 à 19:39:45

à ce que j´ai entendu, lire un texte sous unix, c´est souvent une question de VI ou de MORE ! !!

achdezo
achdezo
Niveau 10
31 janvier 2005 à 19:47:34
    • soupir**

Lockless> Pourtant VIM est très bien... coloration syntaxique, multi fenêtrage, que demande le peuple ?

[LoCkLeSs]
[LoCkLeSs]
Niveau 10
31 janvier 2005 à 20:28:01

Je dis pas que c´est nul, j´ai jamais essayé, mais soit disant que c´est en mode console et ça me fais peur c´est tout :)

Dnob > woh jolie :p

achdezo
achdezo
Niveau 10
31 janvier 2005 à 20:30:40

Nous n´habitons pas le même monde :)

gollumkawder
gollumkawder
Niveau 10
31 janvier 2005 à 20:49:50

Le mode console ne me fais pas plus peur que le deep water rendering, et pourtant je n´aime pas VIm, allez savoir pourquoi... J´avais VIm sur Debian puis Emacs sur SuSe et Mandrake, je trouve ça bien mieux, même si comme Jarose le dit, faut etre une sacrée pieuvre pour atteindre toutes les commandes :-p

Jarozse
Jarozse
Niveau 10
31 janvier 2005 à 21:47:07

Heu...en même temps que vous déviez le sujet vous pourriez répondre à mes questions si c´est possible s´il vous plaît ?

achdezo
achdezo
Niveau 10
01 février 2005 à 18:18:16

Groumpf, peut même plus troller ici.

Sous forums
  • Aide à l'achat Mac
  • Macintosh
  • Création de Jeux
  • Programmation
  • Création de sites web
  • Linux
  • Internet
  • Steam Deck
  • Hardware
La vidéo du moment