Qt for Embedded EGLFS
Unsolved
Mobile and Embedded
-
Can't configure Qt6.8 for target platform: Allwinner T507.
I have installed requred mesa-dev libs:root@HelperBox:~# ldconfig -p | grep libGLESv2 libGLESv2.so.2 (libc6,AArch64) => /usr/lib/aarch64-linux-gnu/libGLESv2.so.2 libGLESv2.so.2 (libc6,AArch64) => /usr/lib/libGLESv2.so.2 libGLESv2.so (libc6,AArch64) => /usr/lib/aarch64-linux-gnu/libGLESv2.so libGLESv2.so (libc6,AArch64) => /usr/lib/libGLESv2.so root@HelperBox:~# ldconfig -p | grep libEGL libEGL_mesa.so.0 (libc6,AArch64) => /usr/lib/aarch64-linux-gnu/libEGL_mesa.so.0 libEGL.so.1 (libc6,AArch64) => /usr/lib/aarch64-linux-gnu/libEGL.so.1 libEGL.so (libc6,AArch64) => /usr/lib/aarch64-linux-gnu/libEGL.so
My t507-toolchain.cmake file:
set(CMAKE_SYSTEM_NAME Linux) set(CMAKE_SYSTEM_PROCESSOR aarch64) # sysroot set(CMAKE_SYSROOT ~/sysroot/helperbox-t507-u1804) set(CMAKE_C_COMPILER aarch64-linux-gnu-gcc) set(CMAKE_CXX_COMPILER aarch64-linux-gnu-g++) set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) set(CMAKE_FIND_ROOT_PATH_MODE_PACKAGE ONLY) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -march=armv8-a -mtune=cortex-a53" CACHE STRING "" FORCE) # Пример для T507 (Cortex-A53) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -march=armv8-a -mtune=cortex-a53" CACHE STRING "" FORCE)
then i do:
cd ~/qt6-source mkdir build-t507 cd build-t507 export TARGET_SYSROOT=$(realpath ~/sysroot/helperbox-t507-u1804) export QT_HOST_INSTALL_PATH=~/Qt6/6.8.3/gcc_64 export QT_INSTALL_PATH=/opt/Qt6-arm64-T507 export PKG_CONFIG_SYSROOT_DIR=${TARGET_SYSROOT} export PKG_CONFIG_LIBDIR=${TARGET_SYSROOT}/usr/lib/aarch64-linux-gnu/pkgconfig:${TARGET_SYSROOT}/usr/share/pkgconfig cmake .. -GNinja -DCMAKE_BUILD_TYPE=Release \ -DCMAKE_TOOLCHAIN_FILE=/home/skb/t507-toolchain.cmake \ -DCMAKE_INSTALL_PREFIX=$QT_INSTALL_PATH \ -DCMAKE_SYSROOT=$TARGET_SYSROOT \ -DCMAKE_FIND_ROOT_PATH=$TARGET_SYSROOT \ -DCMAKE_PREFIX_PATH=$TARGET_SYSROOT/usr \ -DQT_HOST_PATH=$QT_HOST_INSTALL_PATH \ -DQT_GENERATE_SBOM=OFF \ -DQT_BUILD_EXAMPLES=OFF \ -DQT_BUILD_TESTS=OFF \ -DFEATURE_developer_build=OFF \ -DBUILD_SHARED_LIBS=ON \ -DQT_FEATURE_xcb=OFF \ -DQT_FEATURE_xlib=OFF \ -DQT_FEATURE_xkbcommon=OFF \ -DQT_FEATURE_wayland=OFF \ -DQT_FEATURE_vulkan=OFF \ -DQT_FEATURE_egl=ON \ -DQT_FEATURE_opengles2=ON \ -DQT_FEATURE_fontconfig=ON \ -DQT_FEATURE_freetype=ON \ -DQT_QPA_DEFAULT_PLATFORM=eglfs
files egl.pc and glesv2.pc loacated in ~/sysroot/helperbox-t507-u1804/usr/lib/aarch64-linux-gnu/pkgconfig
but I alway get errors like this:
-- Configuring done (17.6s) CMake Error at qtbase/cmake/QtTargetHelpers.cmake:186 (target_link_libraries): Target "EglFSDeviceIntegrationPrivate" links to: EGL::EGL but the target was not found. Possible reasons include: * There is a typo in the target name. * A find_package call is missing for an IMPORTED target. * An ALIAS target is missing. Call Stack (most recent call first): qtbase/cmake/QtModuleHelpers.cmake:615 (qt_internal_extend_target) qtbase/src/plugins/platforms/eglfs/CMakeLists.txt:24 (qt_internal_add_module) CMake Error at qtbase/cmake/QtTargetHelpers.cmake:186 (target_link_libraries): Target "QEglFSIntegrationPlugin" links to: EGL::EGL but the target was not found. Possible reasons include: * There is a typo in the target name. * A find_package call is missing for an IMPORTED target. * An ALIAS target is missing. Call Stack (most recent call first): qtbase/cmake/QtPluginHelpers.cmake:280 (qt_internal_extend_target) qtbase/src/plugins/platforms/eglfs/CMakeLists.txt:93 (qt_internal_add_plugin) CMake Error at qtbase/cmake/QtTargetHelpers.cmake:186 (target_link_libraries): Target "QMinimalEglIntegrationPlugin" links to: EGL::EGL but the target was not found. Possible reasons include: * There is a typo in the target name. * A find_package call is missing for an IMPORTED target. * An ALIAS target is missing. Call Stack (most recent call first): qtbase/cmake/QtPluginHelpers.cmake:280 (qt_internal_extend_target) qtbase/src/plugins/platforms/minimalegl/CMakeLists.txt:10 (qt_internal_add_plugin)