Esto realmente no es un intento de comenzar una guerra de llamas, solo quería abordar algunos de los puntos.
Probablemente, la verdadera razón por la que Qt no se usa más ampliamente es porque es C ++ y menos personas usan c ++ para aplicaciones de escritorio.
Qt no es una biblioteca de C ++. Requiere un paso de compilación separado, lo que hace que el proceso de compilación sea mucho más complicado en comparación con la mayoría de las otras bibliotecas.
El vs-addin para visual studio hace esto automáticamente al igual que el proceso de creación de línea de comandos de Qt. El compilador de recursos utilizado para construir los cuadros de diálogo para MFC también es un paso separado, pero sigue siendo c ++.
Qt es una gran cantidad de fuente, que debe estar presente y preinstalada en cualquier máquina que use antes de compilar. Esto puede hacer que configurar un entorno de compilación sea mucho más tedioso.
Hay una descarga binaria para cada versión de Visual Studio y la compilación desde la fuente es un solo comando. No veo que el tamaño de la fuente del SDK sea tan importante en estos días. Visual Studio ahora instala todas las bibliotecas de C ++ en lugar de permitirle elegir, como resultado, el tamaño de instalación del compilador es> 1Gb.
Está disponible solo bajo LGPL, lo que hace que sea difícil usar una implementación binaria única cuando se necesita lanzar bajo una licencia más restrictiva o menos restrictiva.
La LGPL solo se aplica a la lib, no afecta su código. Sí, significa que tiene que enviar archivos DLL en lugar de un solo binario (a menos que pague), pero en un mundo donde necesita descargar un tiempo de ejecución de Java o una actualización .Net para una pequeña utilidad, esto no es un gran problema. También es un problema menor en plataformas con un solo ABI para que otras aplicaciones Qt puedan compartir las bibliotecas.
En algunos casos, simplemente no se parece a los programas nativos. Diseñar una sola interfaz de usuario para todas las plataformas inherentemente no se verá bien cuando se mueva de una máquina a otra, por varias razones de estilo visual.
Se supone que usa widgets y temas nativos. Debo admitir que hago principalmente aplicaciones técnicas para que mis usuarios no estén demasiado preocupados por el estilo. Especialmente en Windows, la nueva moda de tener todo el estilo como un widget de teléfono inteligente significa que hay cada vez menos un estándar.