Vinculando à DLL do MSVC do MinGW

Estou tentando vincular o LizardTech GeoExpress DSDK ao meu próprio aplicativo. Eu uso o gcc para que possamos compilar em plataformas. No Linux e Mac, isso funciona facilmente: eles fornecem uma biblioteca estática (libltidsdk.a) e cabeçalhos e tudo o que precisamos fazer é usá-los.

Compilar para o Windows não é tão fácil. Eles criaram a biblioteca usando o Microsoft Visual Studio e usamos o MinGW. Eu li o FAQ do MinGW e estou enfrentando os problemas abaixo. A biblioteca é toda em C ++, então minha primeira pergunta: isso é possível?

Apenas a vinculação à dll conforme fornecida gera erros de "referência indefinida" para todas as chamadas de C ++ (construtores, desctrutores, métodos, etc.).

Baseado no Wiki do MinGW:http://www.mingw.org/wiki/MSVC%5Fand%5FMinGW%5FDLLs Eu deveria poder usar o utilitárioreimp converter um .lib em algo utilizável. Eu tentei todos os arquivos .lib fornecidos pelo LizardTech e todos eles fornecem "biblioteca de importação inválida ou corrompida". Eu tentei as versões 0.4 e 0.3 do utilitário reimp.

Usando o segundo método descrito no wiki, executei o pexport e o dlltool sobre o dll para obter um arquivo .a, mas que produz as mesmas referências indefinidas.

BTW: Eu li a discussão abaixo. Deixou alguma ambiguidade quanto a isso ser possível e, dada a página Wiki do MinGW, parece que isso deve ser possível. Se é impossível, é tudo o que preciso saber. Se isso puder ser feito, eu gostaria de saber como fazer isso acontecer.

Como vincular ao VS2008 .libs gerados a partir do g ++

Obrigado!

questionAnswers(4)

yourAnswerToTheQuestion