¿Es una mala práctica usar una versión de lanzamiento de una biblioteca de terceros en depuración binaria?Mezcla de errores y biblioteca de versiones/binario - ¿mala práctica?
Estoy utilizando una biblioteca de terceros y compilé una biblioteca de .lib de lanzamiento. Mi exe está en desarrollo de modo de depuración. Luego me dieron:
error LNK2038: mismatch detected for '_ITERATOR_DEBUG_LEVEL': value '0' doesn't match value '2' in test1.obj
Después de algunas google he encontrado que es porque estoy tratando de mezclar con la liberación de depuración, y probablemente debería compilar la librería en modo de depuración o de otra manera salir del paso con la macro _ITERATOR_DEBUG_LEVEL. Pero solo tengo curiosidad si esa es la forma recomendada y por qué. Parece engorroso que deba compilar y mantener un registro de los archivos binarios tanto de versión como de depuración para cada biblioteca de terceros que pretendo utilizar, lo cual será muy pronto, sin tener la intención de depurar este código.
¿No puede ponerse en contacto con este tercero para obtener una versión de depuración o crear una versión de depuración usted mismo? –
Es más que una mala práctica: está casi garantizado que el programa se bloqueará o hará cosas malas. Antes de VS2010 podías enlazar de todos modos, para descubrir en el tiempo de ejecución extraños errores. Ahora al menos te lo impiden. –
@JesseGood Sí, tengo el código fuente y acabo de compilar la versión de depuración. Problema resuelto. Me preguntaba si puedo salirme con la compilación y el seguimiento de un modo. ¡Aparentemente no! –