La característica ‘tslib’ fue habilitada, pero la precondición ‘libs.tslib’ falló (compilación cruzada de Qt5)
Realicé la compilación cruzada de Qt5.12.11 para ARM sin soporte para tslib, y fue exitosa. Ahora necesito agregar el soporte para tslib. Ya tengo el tslib compilado cruzado para mi arquitectura de destino. Agrego -tslib a mi configuración de esta manera, especificando la ruta de inclusión y librería con -I y -L:
./configure -opensource -confirm-license -xplatform arm-cortex_a8-linux-gnueabi-g++ -prefix myInstallDir/ -no-opengl -no-pch -I /path/to/tslib/include/ -L /path/to/tslib/lib/ -tslib
En el archivo configure.log puedo ver lo siguiente:
loaded result for library config.qtbase_gui.libraries.tslib
Trying source 0 (type inline) of library tslib …
None of [libts.so libts.a] found in [] and global paths.
=> source produced no result.
test config.qtbase_gui.libraries.tslib FAILED
Traté de agregar las siguientes líneas a mi qtbase/mkspecs/arm-cortex_a8-linux-gnueabi-g++/qmake.conf:
QMAKE_INCDIR += /path/to/tslib/include/
QMAKE_LIBDIR += /path/to/tslib/lib/
sin éxito. También intenté agregar /path/to/tslib/lib a la variable de entorno LD_LIBRARY_PATH, pero nada cambió. ¿Es un problema relacionado con la localización de las rutas de librería e inclusión de tslib? ¿Alguien puede darme alguna sugerencia por favor? Gracias.
davy.ai
Solución para añadir soporte de tslib a Qt5.12.11 compilado cruzadamente para arm
Basándote en el mensaje de error del archivo configure.log, parece que los archivos de la biblioteca tslib no se encuentran en la ruta de la biblioteca especificada. Para solucionar este problema, puedes intentar los siguientes pasos:
Verifica dos veces el deletreo y la sintaxis de las marcas -I y -L en tu comando de configuración. Asegúrate de que apunten a los directorios correctos y que estén separados por un espacio.
Prueba usando rutas absolutas tanto para los directorios de inclusión como para los de la biblioteca tslib, solo para eliminar cualquier problema de ruta relativa.
Añade la opción -v a tu comando de configuración con el fin de ver una salida detallada y así poder rastrear donde el enlazador está buscando los archivos de la biblioteca.
Si todo lo demás falla, intenta copiar el archivo o archivos de la biblioteca tslib directamente en el directorio de instalación de Qt (que debería ser myInstallDir/lib en este caso). Luego ejecuta ldconfig o actualiza la variable de entorno LD_LIBRARY_PATH para asegurarte de que el enlazador pueda encontrarlo.
Esperamos que esto te ayude a añadir correctamente el soporte de tslib a tu Qt5.12.11 compilado cruzadamente para arm.