Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 07/11/2012, à 12:29

juliech

Programmes C et C++ : segfault caught : memory not mapped

Bonjour, je rencontre un problème avec deux programmes différents , l'un écrit en C++ et l'autre est un package R utilisant des bouts de code en C. (ce ne sont pas mes programmes)

Or ces deux programmes produisent le meme type d'erreur après lancement :
segfault caught : memory not mapped

J'ai vu que cela pouvait être courant avec C et C++, seulement j'ai déjà testé ces programmes sur une autre machine avec la meme distribution linux et le meme noyau : Ubuntu 12.04 precise noyau 3.2.0.33-generic. Le pc sur lequel ça ne fonctionne pas est tout récent.

La version de gcc sur ces deux machines est gcc (Ubuntu/linaro 4.6.3-1ubuntu5) 4.6.3

Quelqu'un aurait-il déjà vu ce type d'erreur?
Sait-on comment la résoudre?
Si non, étant donné que ca fonctionne sur une machine et pas sur une autre, y a-t-il d'autres logiciels ou packages à checker au niveau de la version qui pourraient différer d'un pc à l'autre?

D'avance merci.
julie

Dernière modification par juliech (Le 07/11/2012, à 12:30)

Hors ligne

#2 Le 07/11/2012, à 12:45

katian

Re : Programmes C et C++ : segfault caught : memory not mapped

une difference au niveau 32 / 64 bits ???

Hors ligne

#3 Le 07/11/2012, à 14:13

juliech

Re : Programmes C et C++ : segfault caught : memory not mapped

Non les deux machines sont en 64-bits

Hors ligne

#4 Le 07/11/2012, à 20:54

telliam

Re : Programmes C et C++ : segfault caught : memory not mapped

Salut,
c'est un cas classique de pointeur mal initialisé ou qui pointe dans une zone invalide.
Un bug peut tres bien se produire sur une machine ou pas sur une autre.
Il faut que tu compiles les programmes en mode debug et que tu fasses générer un coredump.
Une fois le core dump généré (apres plantage du programme) tu px l'ouvrir avec gdb et regarder quelle valeur est invalide et debugger le programme.


"- Un intellectuel assis va moins loin qu'un con qui marche."
Maurice Biraud - Un Taxi pour Tobrouk
Michel Audiard

Hors ligne