Ubuntu 18.04 Bionic viene con Qt 5.9.5 por defecto. Sin embargo, Canonical lo ha compilado sin tener en cuenta la GPU Mali de ARM, de modo que Qt5 no funciona en Ubuntu 18.04 para nada. Así que, tenemos que compilar Qt5 manualmente desde el código fuente. Esta es una guía de compilación un tanto chapucera, que he probado en la última imagen de SO Ubuntu 18.04 Bionic para ODROID-XU4.
Instalación
$ sudo apt update && sudo apt upgrade && sudo apt dist-upgrade $ sudo apt build-dep qt5-default $ apt source qtbase5-dev $ cd qtbase-opensource-src-5.9.5+dfsgA continuación, cambia la línea 86 del archivo src/platformsupport/eglconvenience/qxlibeglintegration.cpp:
if (vendor && strstr(vendor, "Vivante")) {por:
if (vendor && (strstr(vendor, "Vivante") || strstr(vendor, "ARM"))) {Hay un segundo archivo que debemos editar para evitar un error de compilación. Me tire varias horas buscando esta simple solución en http://code.qt.io/cgit/qt/qtbase.git/commit/?h=dev&id=9a640e7bc67b0a1ff5c61c63703b669e6f24521e. Edita el archivo src/plugins/platforms/eglfs/deviceintegration/eglfs_kms_egldevice/qeglfskmsegldevice.cpp y cambia la línea 77:
-EGLNativeDisplayType QEglFSKmsEglDevice::nativeDisplay() constpor:
void *QEglFSKmsEglDevice::nativeDisplay() constAdemás, modifica el cuerpo de la función:
return reinterpret_cast(m_devInt->eglDevice());por:
return m_devInt->eglDevice();Crea dos enlaces simbólicos para que se detecte correctamente OpenGL-ES. Esta solución probablemente estará incluida en la próxima actualización:
$ sudo rm /usr/lib/arm-linux-gnueabihf/libGLESv2.so.2.0.0 $ sudo rm /usr/lib/arm-linux-gnueabihf/libEGL.so.1.0.0 $ sudo ln -s /usr/lib/arm-linux-gnueabihf/mali-egl/libmali.so /usr/lib/arm-linux-gnueabihf/libGLESv2.so.2.0.0 $ sudo ln -s /usr/lib/arm-linux-gnueabihf/mali-egl/libmali.so /usr/lib/arm-linux-gnueabihf/libEGL.so.1.0.0Despues, compila Qt5:
$ sudo dpkg-buildpackage -bMe encontré con este error cuando lo ejecuté en una sesión SSH:
Project ERROR: QtDBus is enabled but session bus is not available. Please check the installation.Cuando compilé Qt desde el terminal de escritorio Mate en lugar de hacerlo por ssh remoto, la compilación no me dio problemas.
Tras 2~3 horas de compilación, el "paquete Debian" falló debido a la ausencia de una clave PGP. No obstante, todas las librerías Qt5 con ejemplos se compilaron correctamente y pueden instalarse con:
$ sudo make installLa muestra de Qt-OpenGL ahora funciona perfectamente
Probaremos la estabilidad y la funcionalidad durante un par de semanas. Si no hay problemas críticos, Hardkernel lo lanzará oficialmente. Mientras tanto, tienes total libertad para publicar tus ideas en el hilo del foro https://forum.odroid.com/viewtopic.php?f=95&t=31070.
Aplicaciones de ejemplo Qt4 Open Source Computer Vision Library (OpenCV) es una librería software de aprendizaje automático y reconocimiento de imágenes por ordenador de código abierto. El entorno de trabajo Qt5 se usa con OpenCV para visualizar el procesamiento de imágenes y también como una interfaz de usuario interactiva.
Calligra es un completo set de 8 aplicaciones para oficina, gráficos y necesidades de gestión, que incluyen procesador de textos, presentaciones, hoja de cálculo y mucho más:
$ sudo apt install calligra-libs
Calibre es un potente administrador de libros electrónicos muy fácil de usar:
$ sudo apt install calibre
Stellarium es un planetario de código abierto gratuito para tu ordenador. Muestra un cielo realista en 3D, al igual que el que se ves a simple vista, con prismáticos o un telescopio:
$ sudo apt install stellarium
Krita es un programa de dibujo profesional de código abierto. Está creado por artistas que quieren potenciar herramientas artísticas que sean asequibles para todo el mundo. Desafortunadamente, Krita para la plataforma ARM en Ubuntu 18.04 PPA está dañado, Canonical lo debería solucionar pronto. Sólo está disponible para Ubuntu 16.04 PPA.
Para comentarios, preguntas y sugerencias, visita el artículo original en http://com.odroid.com/sigong/blog/blog_list.php?bid=199.
Be the first to comment