Je développe un projet qui utilise des DLL et des bibliothèques tierces. Je veux construire mon projet en utilisant CRT statique (LIBCMTD) comme je souhaite exécuter mon application dans "IBM purifier". Cependant, les bibliothèques tierces sont construites en utilisant CRT dynamique (MSVCRT).Conflit StaticCRT (LIBCMT (D)) et DynamicCRT (MSVCRT (D))
Cela donne une erreur comme liant: MSVCRTD.lib (msvcr80d.dll): LNK2005 d'erreur: __mktime64 déjà défini dans LIBCMTD.lib (mktime64.obj) MSVCRTD.lib (msvcr80d.dll): erreur LNK2005: __gmtime64 déjà défini dans LIBCMTD.lib (gmtime64.obj) MSVCRTD.lib (MSVCR80D.dll): erreur LNK2005: __localtime64 déjà défini dans LIBCMTD.lib (loctim64.obj)
J'ai essayé divers paramètres de lieur. J'ai aussi donné/FORCE: MULTIPLE à la ligne de commande de l'éditeur de liens pour ignorer les multiples définitions et créer une construction. Il l'a fait, mais mon application ne pouvait pas fonctionner en purificateur.
Existe-t-il un bon moyen de faire ce que j'essaie d'accomplir? Je n'ai aucun contrôle sur le code source tiers pour contrôler leurs paramètres.
Merci