No se puede cargar el controlador SQL en Visual C ++ (pero se carga en QtCreator)
-
08-07-2019 - |
Pregunta
Tengo una aplicación QT que requiere el controlador MySql. Tengo un archivo .pro para compilar la aplicación con QtCreator y un .vcproj para Visual C ++ 2008 Express. El código es idéntico y se compila sin problemas, pero el ejecutable creado por Visual C ++ Express me da el siguiente resultado y se niega a cargar cualquier controlador / complemento:
QSqlDatabase: controlador QMYSQL no cargado QSqlDatabase: controladores disponibles:
Utilicé QCoreApplication para identificar la ubicación donde están los complementos y parece que ambos ejecutables tienen la misma ruta, por lo que ambos deberían ver los complementos. Uno lo hace, y el otro no.
El código es estándar.
Lo mismo sucede con la muestra SqlBrowser que vino con QT, por lo que no creo que el problema sea el código.
Solución 2
Para cualquier otra persona que se topó con este problema, tengo que decir esto: es mucho más fácil usar uno de los paquetes que contienen binarios precompilados QT para Visual C ++ que intentar compilarlo usted mismo. Y el controlador Qt (la versión 4.3 al menos) es muy difícil de conseguir (en algunas máquinas funciona a las mil maravillas pero en otras no puede encontrar el controlador, usando el mismo código y binarios), así que eres mucho mejor usando una biblioteca MySql dedicada.
Otros consejos
Me enfrenté a este error antes y no pude hacerlo funcionar hasta que me di cuenta de que el complemento no se creó con la misma configuración que mi aplicación (¡depuración vs lanzamiento, doh!).