2

J'ai un explorateur de solution contient 2 projets. Pour un projet, j'ai activé /clr avec /mdd. Pour le projet parent, j'ai /mtd et pas de support clr. Quand je compile cela, je reçois deux erreurs de l'éditeur de liens, y compris le dessous d'un:Comment utiliser l'option/NODEFAULTLIBS en compilation?

lien avertissement Link 4098: Par défaut lib peut entrer en conflit avec une autre utilisation lib/bibliothèque NODEFAULTLIBS

Alors ma question est de savoir comment utiliser /NODEFAULTLIBS dans la compilation .

Merci d'avance.

Répondre

4

Vous devez d'abord déterminer quelle bibliothèque provoque le conflit, si vous le pouvez. Est-ce que l'avertissement de lien vous dit quelque chose?

Ensuite, vous devez ouvrir les pages de propriétés de ce projet et aller à Linker -> Ligne de commande. Dans la zone 'Options supplémentaires', tapez:

/NODEFAULTLIB:xxx.lib

où xxx.lib est la bibliothèque en conflit. Toutefois, si vous ne pouviez pas travailler dans quelle bibliothèque il est, essayez:

/NODEFAULTLIB

+1

Pourriez-vous nous parler de l'impact de l'utilisation de ces options que vous répondez? J'ai essayé d'utiliser "/ NODEFAULTLIB" et il y a maintenant beaucoup de fonction que l'éditeur de liens ne trouve pas. – ForceMagic