Erreur dans la compilation en c

Fermé
adiks - 14 mars 2009 à 17:28
 Dod_Is_Moonlight - 17 mars 2009 à 09:46
Bonjour,
j'ai écrit un programme en c qui manipule les fichiers il comprend :
1.-) la création d'un fichier et l'enregistrement des données dans ce fichier puis la fermeture du fichier
2.-)la réouverture du fichier précédement créé et lecture des données du fichiers puis traitement des données lues
lors de la compilation je recoit ce méssage :

" [Linker error] undefined reference to `__gxx_personality_v0' "
ke ne sait pas ce que cela veut dire et ce qu'il faut faire pour résoudre le probleme.
AIDEZ MOI S'IL VOUS PLAIT!!!.

4 réponses

Dodo_Is_Good
14 mars 2009 à 23:37
Slt,

Votre fonction a bien été trouvée dans les include.
mais ajoutez aussi la libraire .lib associée au niveau du "linker" de votre compilateur.
0
est ce que vous pouvez etre plus explicite en me donnant le chemin a suivre pour arriver à le faire
0
Dod_Is_Sunshine > adiks
15 mars 2009 à 09:27
Re,

Votre compilateur a besoin de connaitre les chemins d'accès à ces librairies car elle contiennent les références aux nouvelles fonctions que vous avez intégré dans votre projet.

Il faudrait normalement faire les étapes suivantes :

> Indiquer à votre éditeur le répértoire .lib contenant les librairies associées à vos nouvelles fonctions : c'est là que le compilateur ira chercher vos .lib.
> Dans les propriétés du projet, ajouter à la section "linker" du compilateur les références explicites aux .lib que vous devez utiliser pour compiler.

Qu'utilisez vous comme éditeur de code (moi par exemple c'est Visual Studio) ?.

cordlt.
0
adiks > Dod_Is_Sunshine
16 mars 2009 à 15:06
je nesuit pas encore avancé dans la programmation mais j'utilise dev c++ 4.9.8.0 et je n'arrive pa encore à comprendre la solutin que vous me proposée.
0
Dod_Is_Cool > adiks
16 mars 2009 à 15:41
Re,

C'est peut être à la base un problème de compilateur de Dev C++ et pas un problème de librairies :

* Aller dans "Outils" -> "Options du compilateur" puis cliquez sur l'onglet "Programmes".
* Remplacer "gcc.exe" se trouvant dans la première case par "g++.exe".

g++ est un compilateur spécifique au C/C++ et j'ai cru voir que Dev C++ utilisait encore le vieux compilateur gcc qui fonctionne mal avec le C.

Docs utile :

http://www.commentcamarche.net/faq/sujet 9497 compiler un programme en c avec dev c sous vista


Dis moi ce que ça donne déjà.

Slt.
0
Dod_Is_Cool > adiks
16 mars 2009 à 15:51
Re,

Avant tout :

Télécharge la dernière version de Dev C++ - version 4.9.9.2 car ça peut résoudre tout simplement ton problème sans changer de compilateur à la main pour tes programmes en C :

Téléchargement :

http://www.commentcamarche.net/telecharger/telecharger 59 dev c

Slt.
0
adiks Messages postés 11 Date d'inscription lundi 17 novembre 2008 Statut Membre Dernière intervention 20 février 2012 3
16 mars 2009 à 16:04
en changeant gcc par g++ mon programme a compiler et créé l'application executable "merci" .pendant l'execution je recoit une autre erreur
en effet mon prog cree un fichier puis sauvegarde les données à l'intérieur ferme le fichier.dans un deuxieme temp réouvre le fichier précédent et lit les données de ce dernier .
l'erreur se lors au niveau de la deuxieme ouverture du fichier . je recoit un message du syst d'exploitation qui me dit que mon prog a cessé de fonctionner et qu'il fallait que j'envoye un rapport d'erreur à Microsoft.
que faire pour résoudre ce deuxieme probleme?
0
Char Snipeur Messages postés 9813 Date d'inscription vendredi 23 avril 2004 Statut Contributeur Dernière intervention 3 octobre 2023 1 298
16 mars 2009 à 16:18
Là c'est un problème d'algorithme, pas de compilation.
Ouvre un nouveau message, donne ton code source dans les balises code.
Les problèmes de ce genre à l'exécution se résolvent en utilisant le debugueuur (il y a une icone sous DevCpp) qui te dit d'où viens le problème.
Vérifie tu bien que ton fichier est ouvert correctement ?
0
c pourtant simple :
erreur de lien, reference non définie.
-1