Please forgive my ignorance but I'm new to Raspberry Pi/Linux.
I'm trying to make a touch screen app for the Pi using a 3.5" touch screen (xpt2046) and QT Creator (5.12.5). QT Creator is running on a Windows 10, Hyper-V, Ubuntu 20.04 installation. It's a Raspberry Pi 3b+.
When I try to Run the app from QT creator I get an error:
Could not initialize egl display
Remote process crashed.
From the Raspberry Pi, if I try to open the app from the terminal then I get the same error. However, if I double click on the app in the desktop explorer(?) then the app opens fine.
What could be wrong?
If I do:
: ldd <myApp>
Then I get
linux-vdso.so.1 (0x7ee55000)
/usr/lib/arm-linux-gnueabihf/libarmmem-${PLATFORM}.so => /usr/lib/arm-linux-gnueabihf/libarmmem-v7l.so (0x76f4b000)
libwiringPi.so => /lib/libwiringPi.so (0x76f0f000)
libQt5Widgets.so.5 => /usr/local/qt5pi/lib/libQt5Widgets.so.5 (0x769e200)
libQt5Gui.so.5 => /usr/local/qt5pi/lib/libQt5Gui.so.5 (0x7655e000)
libQt5SerialPort.so.5 => /usr/local/qt5pi/lib/libQt5SerialPort.so.5 (0x76541000)
libQt5Core.so.5 => /usr/local/qt5pi/lib/libQt5Core.so.5 (0x76034000)
libGLESv2.so.2 => /lib/arm-linux-gnueabihf/libGLESv2.so.2 (0x76015000)
libstdc++.so.6 => /lib/arm-linux-gnueabihf/libstdc++.so.6 (0x75ece000)
libgcc_s.so.1 => /lib/arm-linux-gnueabihf/libgcc_s.so.1 (0x75ea1000)
libc.so.6 => /lib/arm-linux-gnueabihf/libc.so.6 (0x75d53000)
libm.so.6 => /lib/arm-linux-gnueabihf/libm.so.6 (0x75cd1000)
libpthread.so.0 => /lib/arm-linux-gnueabihf/libpthread.so.0 (0x75ca7000)
librt.so.1 => /lib/arm-linux-gnueabihf/librt.so.1 (0x75c90000)
libcrypt.so.1 => /lib/arm-linux-gnueabihf/libcrypt.so.1 (0x75c50000)
libpng16.so.16 => /lib/arm-linux-gnueabihf/libpng16.so.16 (0x75c14000)
libz.so.1 => /lib/arm-linux-gnueabihf/libz.so.1 (0x75be9000)
libharfbuzz.so.0 => /lib/arm-linux-gnueabihf/libharfbuzz.so.0 (0x75aeb000)
libudev.so.1 => /lib/arm-linux-gnueabihf/libudev.so.1 (0x75abb000)
libpcre2-16.so.0 => /lib/arm-linux-gnueabihf/libpcre2-16.so.0 (0x75a3f000)
libdouble-conversion.so.1 => /lib/arm-linux-gnueabihf/libdouble-conversion.so.1 (0x75a1b000)
libdl.so.2 => /lib/arm-linux-gnueabihf/libdl.so.2 (0x75a08000)
libgthread-2.0.so.0 => /lib/arm-linux-gnueabihf/libgthread-2.0.so.0 (0x759f6000)
libglib-2.0.so.0 => /lib/arm-linux-gnueabihf/libglib-2.0.so.0 (0x758e6000)
/lib/ld-linux-armhf.so.3 (0x76f60000)
libGLdispatch.so.0 => /lib/arm-linux-gnueabihf/libGLdispatch.so.0 (0x75867000)
libfreetype.so.6 => /lib/arm-linux-gnueabihf/libfreetype.so.6 (0x757c4000)
libgraphite2.so.3 => /lib/arm-linux-gnueabihf/libgraphite2.so.3 (0x75793000)
libpcre.so.3 => /lib/arm-linux-gnueabihf/libpcre.so.3 (0x7571c000)
If Do
: cd /opt/vc/lib
: ls
Then I get
libbcm_host.so libdtovl.so libGLESv2.so libmmal_util.so libvcsm.so
libbrcmEGL.so libEGL.so libGLESv2.so.2 libmmal_vc_client.so libWFC.so
libbrcmGLESv2.so libEGL.so.1 libGLESv2_static.a libopenmaxil.so pkgconfig
libbrcmOpenVG.so libEGL.so1 libkhrn_client.a libOpenVG.so plugins
libbrcmWFC.so libEGL.so9 libkhrn_static.a libvchiq_arm.so
libcontainers.so libEGL_static.a libmmal_components.so libvchostif.a
libdebug_sym.so libelftoolchain.so libmmal_core.so libvcilcs.a
libdebug_sym_static.a libGLESv1_CM.so libmmal.so libvcos.so
These screenshots may also help but I can't remember what I did to produce them 🙃
I think, but can't be certain, that the command I used to build QT was:
./configure -release -opengl es2 -device linux-rasp-pi-g++ -device-option CROSS_COMPILE=~/raspi/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian-x64/bin/arm-linux-gnueabihf- -sysroot ~/raspi/sysroot -opensource -confirm-license -make libs -prefix /usr/local/qt5pi -extprefix ~/raspi/qt5pi -hostprefix ~/raspi/qt5 -no-use-gold-linker -v -no-gbm
I followed these instructions to install the display drivers: https://www.raspberrypi.org/forums/viewtopic.php?t=143581