Compilación de bibliotecas estáticas TagLib 1.6.3 para Windows

Me está costando mucho compilar y usar TagLib 1.6.3 en mi proyecto Qt. He intentado todo lo que puedo pensar. TagLib afirma que es compatible con CMake pero no estoy teniendo suerte. Además, estoy confundido acerca de qué tipo de archivos necesito incluso para mis bibliotecas Qt.

He creado archivos * .a, * .lib y * .dll. Por lo que entiendo hasta ahora ... creo que ya que estoy trabajando en Windows * .lib es lo que quiero. No importa lo que haga, siempre termino con "referencias indefinidas" a cualquier función de TagLib que intento usar cuando intento compilar mi proyecto Qt. He intentado MinGW32, MSYS, Visual Studio 2008 e incluso compilación cruzada para Windows en Linux. Todo no revela nada.

Lo que tiene aún menos sentido para mí es que si compilo la misma fuente de TagLib con Qt en Mac (g ++ creo) funciona bien. En algún lugar de mis procedimientos de compilación de Windows tengo que estar yendo mal. He estado golpeando mi cara en mi escritorio probablemente durante aproximadamente 30 (encendido y apagado) horas tratando de resolver esto.

Como Qt usa minGW, ¿debo compilar TagLib con el mismo compilador?

Si compilo * .lib's con Visual Studio, ¿no son compatibles?

¿Son las bibliotecas * .a incluso utilizables en Windows? (suponiendo minGW)

Todavía estoy tratando de manejar estas cosas de C ++, pero después de leer innumerables hilos de foros y otras preguntas todavía me quedo corto. Esto es lo que he estado trabajando en CMake actualmente ...

cmake -G "MinGW Makefiles" -DENABLE_STATIC=ON -DHAVE_ZLIB=0 -DWITH_MP4=1 -DMAKE_TAGLIB_LIB=1
cmake --build ./

Esto genera un solo archivo * .a de ~ 2 MB de tamaño. La biblioteca de trabajo en Mac era de ~ 3 MB, y el * .lib de Visual Studio era de ~ 4 MB en modo Release. Por favor, alguien me salve de esta locura de línea de comandos multiplataforma C ++ porque estoy al final de mi ingenio. Probablemente incluso le pagaría por compilarme algunas bibliotecas%! $ # & Ing. Gracias.

Respuestas a la pregunta(3)

Su respuesta a la pregunta