Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1395 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  Unresolved external... La Loose ultime !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Unresolved external... La Loose ultime !

n°537987
Kyle_Katar​n
Posté le 13-10-2003 à 11:27:20  profilanswer
 

Voilà mon problème.
 
Dans Principal.Cpp j'utilise une fonction OrdreBFPASSAGE qui est définie dans "robot.h" (il y a un #include "robot.h" dans principal) et définie dans blabla.c
 
La compilation se fait mais l'édition de lien me crache :

Code :
  1. Principal.obj : error LNK2001: unresolved external symbol "void __cdecl OrdreBFPASSAGE(int,int,int)" (?OrdreBFPASSAGE@@YAXHHH@Z)


 
Une idée ?

mood
Publicité
Posté le 13-10-2003 à 11:27:20  profilanswer
 

n°538005
LetoII
Le dormeur doit se réveiller
Posté le 13-10-2003 à 11:43:01  profilanswer
 

Tu compile avec quoi?


---------------
Le Tyran
n°538006
chrisbk
-
Posté le 13-10-2003 à 11:44:09  profilanswer
 

Melanger C et CPP je vois pas trop l'idee....
Bref, pour ton probleme, tu te fais ravaler a cause du decorage de fonctions, different en C et en C++
 
Solution : dans robot.h :
 

Code :
  1. extern "C"
  2. {
  3. void OrdreBFPASSAGE(int,int,int);
  4. }


 
et vala


Message édité par chrisbk le 13-10-2003 à 11:44:23
n°538010
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 13-10-2003 à 11:44:38  profilanswer
 

LNK2001, c'est visual C++
Kyle >> vérifie si ta fonction OrdreBFPassage() est dans une lib qui est bien liée statiquement au reste de ton projet
 
edit: [:benou_grilled], en plus je pense jamais à la décoration de fonction :/


Message édité par Harkonnen le 13-10-2003 à 11:45:37

---------------
J'ai un string dans l'array (Paris Hilton)
n°538012
Kyle_Katar​n
Posté le 13-10-2003 à 11:45:11  profilanswer
 

ok merci je vais vérifier tout ça !

n°538015
chrisbk
-
Posté le 13-10-2003 à 11:46:20  profilanswer
 

Harkonnen a écrit :


edit: [:benou_grilled], en plus je pense jamais à la décoration de fonction :/


 
Bah ce probleme, tu te fais avoir une fois apres c'est gravé a vie :D

n°538017
LetoII
Le dormeur doit se réveiller
Posté le 13-10-2003 à 11:47:05  profilanswer
 

chrisbk a écrit :


 
Bah ce probleme, tu te fais avoir une fois apres c'est gravé a vie :D
 


 
Comme le ; après une classe  :whistle:


---------------
Le Tyran
n°538022
Kyle_Katar​n
Posté le 13-10-2003 à 11:48:50  profilanswer
 

chrisbk a écrit :

Melanger C et CPP je vois pas trop l'idee....
Bref, pour ton probleme, tu te fais ravaler a cause du decorage de fonctions, different en C et en C++
 
Solution : dans robot.h :
 

Code :
  1. extern "C"
  2. {
  3. void OrdreBFPASSAGE(int,int,int);
  4. }


 
et vala


 
Marche tjs pas...

n°538027
chrisbk
-
Posté le 13-10-2003 à 11:50:45  profilanswer
 

redonne la nouvelle erreur de link

n°538031
Kyle_Katar​n
Posté le 13-10-2003 à 11:52:37  profilanswer
 

Toujours la même !
Franchement je vois vraiment pas d'où ça peut venir ...
 
Bien sur quand je commente l'utilisation dans Principal.cpp, tout passe....

mood
Publicité
Posté le 13-10-2003 à 11:52:37  profilanswer
 

n°538037
chrisbk
-
Posté le 13-10-2003 à 11:54:51  profilanswer
 

bon, je t'attendais au tournant :D
Si tu as tjs :
 
 

Citation :

Principal.obj : error LNK2001: unresolved external symbol "void __cdecl OrdreBFPASSAGE(int,int,int)" (?OrdreBFPASSAGE@@YAXHHH@Z)


 
c'est que ton extern "C" a pas ete pris en compte
(le bout en gras c'est de la decoration C++, avec extern C elle n'a pas lieu d'etre)
 
T sur que tu redeclares pas la fonction plus loin ?
 

n°538044
Kyle_Katar​n
Posté le 13-10-2003 à 11:59:09  profilanswer
 

Non en fait le extern "c" passe pas, il me crache :  
 

Code :
  1. c:\mes programmes\c++\simulateur\simulateur\robot.h(138) : error C2059: syntax error : 'string'


 
C'est à la ligne avec le extern "C"...
 
en fait je pense qu'on va carrément repenser la structure du projet parceque là c'est pas glop....

n°538046
chrisbk
-
Posté le 13-10-2003 à 12:00:38  profilanswer
 

Ton gros pb, c'est le melange C/C++
(et que tu es avare d'information :D)
Genre la ton erreur, elle se produit quand tu compile le C ou le C++ ?
 
(et c'est C pas c, meme si je suis pas sur que ca change grand chose)

n°538050
Kyle_Katar​n
Posté le 13-10-2003 à 12:03:32  profilanswer
 

non, merci, on en a parlé avec le reste de l'équipe, on va tout passer en C++, ça sera plus propre que le merdier actuel
 
Note : c'est le code de notre robot pour la coupe de France de robotique ("e=m6" ). http://eleves.supaero.fr/club/robotic


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  Unresolved external... La Loose ultime !

 

Sujets relatifs
unresolved symbol in_ntoa()[VC++] Erreur de link: LNK2001: unresolved external symbol
Pb avec fo:external-graphic...unresolved external symbol
[C]"unresolved externals" ca veux dire koi?|VC++] error LNK2001: unresolved external symbol
[php] Recherche ultime 
Plus de sujets relatifs à : Unresolved external... La Loose ultime !


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR