Hi,
I am trying to cross compile qt quick applications for running in Beaglebone Black.
The image I am using is : bone-debian-9.9-lxqt-armhf-2019-08-03-4gb.img
Following as per : BeagleBoneBlack/SGX + Qt EGLFS + Weston - eLinux.org
I could now run a QtQuick EGLFS Application natively in Beaglebone Black.
For ex:
/etc/init.d/rc.pvr start
cd /usr/lib/arm-linux-gnueabihf/qt5/examples/quickcontrols/extras/dashboard
qmake
make
export QT_QPA_PLATFORM=eglfs
export QT_QPA_EGLFS_INTEGRATION=none
./dashboard
with the above procedure, the dashboard is finely displayed in Beaglebone Black attached Display.
But what I required is Cross compiling Qt Quick EGLFS Application in an Ubuntu 20.04 system and run it in Beagle Bone Black.
For Cross compiling I am following the guide : https://forum.beagleboard.org/t/cannot-properly-configure-to-install-qt-with-eglfs-and-opegles2-support/2565/24
Qt Source code used : ver 5.12.5
Toolchain taken from : > **https://releases.linaro.org/components/toolchain/binaries/7.5-2019.12/arm-linux-gnueabihf/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf.tar.xz**
sysroot : taken from beaglebone black with rsync command as shown in the guide
The configuration for Qt build:
/home/sajeevan2/bbb_tools_sgx/qt-everywhere-src-5.12.5/configure -platform linux-g++-64 -prefix /home/sajeevan2/bbb_tools_sgx/qt_5_12_5_bbb/qt_5_12_5 -extprefix /home/sajeevan2/bbb_tools_sgx/qt_5_12_5_bbb/binaries_sgx -hostprefix /home/sajeevan2/bbb_tools_sgx/qt_5_12_5_bbb/tool -release -opengl es2 -device linux-beaglebone-g++ -device-option CROSS_COMPILE=/home/sajeevan2/bbb_tools_sgx/gcc-linaro-7.5.0-2019.12-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf- -no-sql-db2 -no-sql-ibase -no-sql-mysql -no-sql-oci -no-sql-odbc -no-sql-psql -no-sql-sqlite -no-sql-sqlite2 -no-sql-tds -sysroot /home/sajeevan2/bbb_tools_sgx/sysroot -opensource -confirm-license -skip qtwayland -skip qtlocation -skip qtscript -make libs -nomake examples -nomake tests -v -no-gbm -skip webengine
Brief Config Summary:
QPA backends:
DirectFB ............................... no
EGLFS .................................. yes
EGLFS details:
EGLFS OpenWFD ........................ no
EGLFS i.Mx6 .......................... no
EGLFS i.Mx6 Wayland .................. no
EGLFS RCAR ........................... no
EGLFS EGLDevice ...................... no
EGLFS GBM ............................ no
EGLFS VSP2 ........................... no
EGLFS Mali ........................... no
EGLFS Raspberry Pi ................... no
EGLFS X11 ............................ no
LinuxFB ................................ yes
VNC .................................... yes
Qt QML:
QML network support .................... yes
QML debugging and profiling support .... yes
QML sequence object .................... yes
QML list model ......................... yes
QML XML http request ................... yes
QML Locale ............................. yes
QML delegate model ..................... yes
Qt Quick:
Direct3D 12 ............................ no
AnimatedImage item ..................... yes
Canvas item ............................ yes
Support for Qt Quick Designer .......... yes
Flipable item .......................... yes
GridView item .......................... yes
ListView item .......................... yes
TableView item ......................... yes
Path support ........................... yes
PathView item .......................... yes
Positioner items ....................... yes
Repeater item .......................... yes
ShaderEffect item ...................... yes
Sprite item ............................ yes
Qt Scxml:
ECMAScript data model for QtScxml ...... yes
Qt Gamepad:
SDL2 ................................... no
Qt 3D:
Assimp ................................. yes
System Assimp .......................... no
Output Qt3D Job traces ................. no
Output Qt3D GL traces .................. no
Use SSE2 instructions .................. no
Use AVX2 instructions .................. no
Aspects:
Render aspect ........................ yes
Input aspect ......................... yes
Logic aspect ......................... yes
Animation aspect ..................... yes
Extras aspect ........................ yes
Qt 3D Renderers:
OpenGL Renderer ........................ yes
Qt 3D GeometryLoaders:
Autodesk FBX ........................... no
I could create qmake.
Normal Qt applications are running fine in Beaglebone Black.
But QtQuick are failing and showing segment fault.
The same dashboard program I cross compiled from Ubuntu and run it from Beagleblack.
The result is as follows:
root@beaglebone:~# ./dashboard -platform eglfs
Segmentation fault
root@beaglebone:~# file dashboard
dashboard: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, interpreter /lib/ld-linux-armhf.so.3, for GNU/Linux 3.2.0, BuildID[sha1]=9bec8750aa4d95cb76d2d1bb9d9ac2792d48277b, not stripped
root@beaglebone:~#
Please help me in solving the issue.
Thanks in advance for the help.
Sajeevan K