¿Cómo arreglar qt4 y qt5 en el motor de arranque al mismo tiempo?
1. Modificar el sistema de rutas. Muchas clases bajo QtGUI de Qt4 se dividen en módulos de widgets. Para mejorar la compatibilidad, se eliminaron los encabezados de estos include, directamente #include
2, se agregó un reemplazo de macro, Qt::WFlag se convierte en WindowFlags de Qt5, un pequeño problema.
3. Modificación del sistema de complementos. El nuevo Q_PLUGIN_METADATA está ubicado a la cabeza de la clase de implementación del complemento, reemplazando el modo de exportación anterior en CPP y no tiene ningún impacto en la migración. Agregue una macro de preprocesamiento de compilación, juzgue la bandera y decida qué método usar.
4. Problemas de procesamiento de cadenas. En la actualidad, debido al uso estandarizado del chino, el inglés y la internacionalización, el proyecto no ha encontrado problemas de código confuso y se puede considerar que tiene buena compatibilidad.
5. Dependencias de terceros
Si hace referencia al complemento de conexión Sql de PostgreSQL o MySQL, asegúrese de copiar los archivos de la biblioteca relacionados con libpq y libmysql a la carpeta donde se encuentra el archivo ejecutable, y no la carpeta donde se encuentra el complemento. De lo contrario, aunque se pueda enumerar el controlador, la conexión puede fallar. Si se hace referencia al complemento OCI, tenga cuidado de no copiar oci.dll en la carpeta de versión. En algunos casos, la conexión falla. En su lugar, utilizamos una instancia de Oracle Connect en el sistema de ruta de la máquina de destino de publicación para obtener las dependencias.
6. Publica el programa
No olvides publicar el contenido de la carpeta de complementos de Qt5.
Resumen: Después de la prueba, la tasa de conversión de Qt4 a QT5 es QT3->4, que es mucho más fluida y los proyectos normales se pueden migrar rápidamente.