Vinculación a la DLL de MSVC desde MinGW

Estoy tratando de vincular el DSDK LizardTech GeoExpress en mi propia aplicación. Yo uso gcc para que podamos compilar en plataformas. En Linux y Mac, esto funciona fácilmente: proporcionan una biblioteca estática (libltidsdk.a) y encabezados y todo lo que tenemos que hacer es usarlos.

Compilar para Windows no es tan fácil. Han construido la biblioteca con Microsoft Visual Studio, y nosotros usamos MinGW. He leído las preguntas frecuentes de MinGW y me encuentro con los siguientes problemas. La biblioteca es toda C ++, así que mi primera pregunta: ¿es esto posible?

Simplemente vincular contra el dll como se proporciona produce errores de "referencia indefinida" para todas las llamadas de C ++ (constructores, desctructores, métodos, etc.).

Basado en MinGW Wiki:http://www.mingw.org/wiki/MSVC%5Fand%5FMinGW%5FDLLs Debería poder usar la utilidadreimp para convertir un .lib en algo utilizable. He probado todos los archivos .lib proporcionados por LizardTech, y todos dan "biblioteca de importación no válida o corrupta". He probado las versiones 0.4 y 0.3 de la utilidad de reimp.

Usando el segundo método descrito en la wiki, ejecuté pexport y dlltool sobre el dll para obtener un archivo .a, pero eso produce las mismas referencias indefinidas.

Por cierto: he leído la discusión a continuación. Dejó cierta ambigüedad en cuanto a si esto es posible, y dada la página Wiki de MinGW parece que esto debería ser posible. Si es imposible, eso es todo lo que necesito saber. Si se puede hacer, me gustaría saber cómo puedo lograr que esto suceda.

Cómo vincular a VS2008 .libs generados desde g ++

¡Gracias!

Respuestas a la pregunta(4)

Su respuesta a la pregunta