/ / Usando al mismo tiempo Boost en modo de liberación y depuración - visual-c ++, depuración, lanzamiento, mixto

Usando al mismo tiempo Boost en modo de liberación y depuración - visual-c ++, depuración, lanzamiento, mezclado

El título es sólo para burlarse. :-) Sé que no es posible, pero aquí está mi problema.

Mi aplicación (una DLL, en realidad) utiliza Boost. También utiliza una API externa, que también utiliza Boost. La API externa, por supuesto, se proporciona en un archivo binario de liberación, junto con los archivos binarios necesarios de Boost de lanzamiento.

Cuando compilo / vinculo mi DLL en modo de lanzamiento,no tengo problema Preciso que vinculo mi aplicación con Boost de forma dinámica (BOOST_ALL_DYN_LINK). En el modo de depuración, no puedo cargar mi DLL. No estoy seguro de que se deba a Boost, pero sospecho que a Windows no le gusta trabajar con dos Boost (la versión que se llama por la biblioteca externa y la versión de depuración llamada por mi código).

¿Funcionará mejor si vinculo mi código de forma estática con el lanzamiento de Boost?

No creo que esté relacionado con CRT, porque no tengo nada en el Visor de eventos.

Yo uso Visual Studio 2005 SP1.

Gracias.

Respuestas

0 para la respuesta № 1

¿Funcionará mejor si vinculo mi código de forma estática con el lanzamiento de Boost?

Sí, eso es lo que esperaría, si te vinculasEstáticamente, obtienes una "copia" de impulso en tu binario, y nunca se carga ningún DLL de impulso para tus propias necesidades de impulso ... la biblioteca externa estará felizmente vinculada a sus archivos DLL de lanzamiento. Sin embargo, esto no funcionará si la biblioteca externa en realidad utiliza un impulso en su API pública llamada por su aplicación. En este caso, no podrá resolver el problema. Si llama a cualquier API que espera un impulso, su compilación de impulso debe coincide con el impulso de la implementación de la API.