¿Existe una guía de mejores prácticas para distribuir bibliotecas nativas de C para Windows?

¿Alguien sabe de una guía de mejores prácticas para implementar bibliotecas compartidas de Windows ANSI nativas (sin COM, sin .NET)?

Nuestro producto utiliza zlib y distribuimos binarios precompilados en nuestra página de descargas que difieren de los de la página oficial de zlib. Supongo que la razón de esto espara evitar mezclar tiempos de ejecución de C. Los oficiales están construidos contra msvcrt usando VC ++ 6.0 y VS.NET/2005/2008 usará msvcrt71 / 80/90.

Lo que quiero hacer es crear soluciones y proyectos VS2005 / 8 que construyan adecuadamente el zlib para nosotros y los distribuyan en lugar de lo que tenemos ahora. Me gustaría hacer esto con cuidado y distribuir un paquete adecuadamente útil que también podría enviar a los comisarios de zlib para incluirlos en su distribución de origen. Sin embargo, encontrar información confiable ha resultado ser problemático. Tengo un montón de libros sobre programación de Win32 y he encontrado muchos artículos en la web, pero ninguno de estos parece hacer un trabajo minucioso de describir lo queDe Verdad Necesito distribuir.

Por ejemplo, zlib distribuye los archivos .exp, .lib stub y .def donde fftw distribuye los archivos .def pero no los archivos .lib y los archivos .exp. Supongo que podría deshacerme de todo lo que parece útil allí (o simplemente reflejar lo que el zlib oficial tiene actualmente) pero me gustaría saberlopor qué Tiene que estar allí y en qué directorios pertenece.

¿Hay buenos ejemplos de distribuciones de bibliotecas bien mantenidas de Windows que se originaron en el mundo de Unix?

Distribuciones binarias oficiales de zlib (desplácese hacia abajo)

Nuestras distribuciones de ventanas.

PARA ACLARAR:

Distribuimos una biblioteca y proporcionamos el zlib a (en su mayoría) usuarios de Windows, ya que normalmente no lo tienen disponible. Quiero que nuestra compilación de zlib sea útil como componente en general, no solo como .dll que consume nuestro producto. Somos de código abierto y ampliamente utilizados, por lo que queremos que nuestro entorno de compilación completo esté disponible y sea fácilmente adaptable a cualquier compilador que desee utilizar.

Respuestas a la pregunta(3)

Su respuesta a la pregunta