Une des difficultés de la coexistence du langage C et du langage C++ ce sont les conventions de nommages du LINKER et cette error LNK2019 en est la conséquence. Pour trouver la solution c'est un peu la catastrophe :
Erreur des outils Éditeur de liens LNK2019
Et alors après avoir fait tout ça, je me retrouve avec l'erreur suivante :
Gravité Code Description Projet Fichier Ligne État de la suppression
Erreur LNK2019 symbole externe non résolu __except_handler4_common référencé dans la fonction __except_handler4 MFCStarterKit D:\Mabyre\Visual Studio\CPlusPlus\MFCStarterKit4.1\MFCStarterKit\MFCStarterKit\MSVCRTD.lib(_chandler4gs_.obj) 1
Merci ! Heureusement qu'il y des âmes charitables, la solution se trouvait ici :
https://stackoverrun.com/fr/q/8776145
malheureusement stackoverrun a disparu, lien cassé, pas grave, j'ai noté tout ça ici ...
Dans votre projet de bibliothèque, consultez :
Propriétés -> C/C++ -> Génération de code -> Runtime Library :
Il y a des chances qu'il soit réglé sur :
Changez cette option et mettez la à :
multithread Debug (/ MTd)
et à la reconstruction, l'erreur aura disparue !
stackoverrun à disparu ! |
L'original de cet article dans :
Unresolved external symbol __except_handler4_common" in Visual Studio 2015 |
Franchement :
/MDd à la place de /MTD cela ne me serait pas venu à l'idée ...
Conseil pour ajouter une librairie à votre projet
Lorsque vous suivez les directives de la page suivante :
pour ajouter une librairie à votre projet.
N'oubliez pas que vous pouvez mettre les chemins d'accès aux .lib .dll et autres en "relatif", si vous utilisez l'outil de recherche pour aller chercher les objets, il mettra le chemin en "absolu" et vous aurez alors des problèmes si vous renommez ou déplacez tout ou partie de votre projet.
Tous ces soucis ont été corrigés avec Visual Studio C#.NET, c'est curieux que cela ne le soit pas pour Visual C++ ...
Have fun!
Aucun commentaire:
Enregistrer un commentaire