MS VC++ et problème à l'édition des liens - C++ - Programmation
Marsh Posté le 25-06-2007 à 15:08:50
A savoir que j'ai aussi, au tout début de l'édition des liens, ce warning :
LINK : warning LNK4098: conflit entre la bibliothèque par défaut 'LIBCMT' et les autres bibliothèques ; utilisez /NODEFAULTLIB:library
que j'ai désactivé en rajoutant /NODEFAULTLIB:LIBCMT
Marsh Posté le 25-06-2007 à 16:55:05
En séparant les deux parties du code (celle utilisant xerces est utilisée par le moyen d'une librairie et non plus directement intégrée), je n'ai plus qu'une erreur :
Code :
|
Bon...
Marsh Posté le 10-07-2007 à 16:28:52
Bonjour,
Je n'arrive toujours pas à compiler, que ce soit tout en même temps ou en séparant la partie utilisant xerces. Les erreurs ci-dessus sont toujours là... quelqu'un pour m'aider SVP ?
Marsh Posté le 10-07-2007 à 23:59:53
Ce que je fais habituellement pour regler ce genre de probleme, c'est une recherche binaire a l'interieur des fichiers obj/lib, pour reperer les noms tels qu'ils sont importes et exportes.
Tu peux aussi sans doute demander au linker qu'il te genere un listing des symboles importes/exportes, ca t'aidera a voir plus clair.
En general, les references non resolues viennent toujours des memes raisons :
- oubli d'inclure une librairie dans la ligne de commande (ce qui n'est pas ton cas apparament)
- desaccord sur les conventions d'appel (stdcall, toussa). Tu peux verifier ca dans la categorie "C++" des options de tes fichiers.
edit : quant a ton warning
LINK : warning LNK4098: conflit entre la bibliothèque par défaut 'LIBCMT' et les autres bibliothèques ; utilisez /NODEFAULTLIB:library
tu peux le faire disparaitre plus proprement en faisant correspondre les librairies runtime de chacun de tes projets : options du projet, generation de code, et la tu choisis entre Multithread DLL, Multithread Debug DLL, etc ... deux modules lies statiquement doivent avoir le meme runtime.
Marsh Posté le 16-07-2007 à 12:18:17
Je répond un peu tard, mais merci pour ton aide.
Il fallait recompiler la librairie Xerces avec une certaine option (traiter les wchar_t comme type interne). Et concernant les warning "conflit entre bibliothèques" ta réponse est nickel
Marsh Posté le 25-06-2007 à 14:52:44
Bonjour,
j'essaie de compiler une application utilisant entre autre deux librairies : CGAL (http://www.cgal.org) et Xerces-C++ (http://xml.apache.org/xerces-c/).
La compilation se passe bien, mais à l'édition des liens :
Est ce que ceci parle à quelqu'un ? Sachant que la librairie xerces-c_2D.lib apparait bien dans la commande d'édition des liens, et que lorsque la partie du code qui utilise xerces est compilé (+ édition des liens) séparemment du reste, ça fonctionne...
La commande pour l'édition des liens, au cas où ça puisse servir :
Merci pour l'aide que vous pourrez m'apporter.
Message édité par souliane le 25-06-2007 à 15:04:43