Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cppQML: Add the hardware acceleration support for the Qt template #125

Merged
merged 9 commits into from Oct 18, 2023

Conversation

andreriesco
Copy link
Collaborator

@andreriesco andreriesco commented Oct 16, 2023

Add the hardware acceleration support for the Qt template, by
using the newly release Torizon Qt6 containers (torizon/qt6-wayland and
torizon/qt6-wayland-vivante).
Also change the build tool from qmake6 to cmake, because at the moment
the "quick" module when added through qmake6 (in the .pro file),
adds the requirement of libGLX on the Makefile, which is not available
for the iMX8 modules.
Therefore, before it gets fixed, to use qmake6 you have remove the
/usr/lib/aarch64-linux-gnu/libGLX.so from the LIBS of the Makefile
generated by qmake6 before running "make". Because of that, the
recommended way is to use CMake, the default of this new
hardware accelerated Qt6 template.

Also, minor fixes on some tasks and on README.md.

Signed-off-by: Andre Riesco <andre.riesco@toradex.com>

Signed-off-by: Andre Riesco <andre.riesco@toradex.com>
@microhobby
Copy link
Member

@andreriesco when running the build-debug-arm I'm getting the follow error:

Executing task: DOCKER_HOST= docker run --rm -it -v /home/castello/tmp/vscode/qttesting:/app cross-toolchain-arm-qttesting cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_CXX_COMPILER=arm-linux-gnueabihf-g++ -DCMAKE_C_COMPILER=arm-linux-gnueabihf-gcc -Bbuild-armhf 

WARNING: The requested image's platform (linux/arm64/v8) does not match the detected host platform (linux/amd64/v3) and no specific platform was requested
-- The CXX compiler identification is unknown
-- The C compiler identification is unknown
CMake Error at CMakeLists.txt:2 (project):
  The CMAKE_CXX_COMPILER:

    arm-linux-gnueabihf-g++

  is not a full path and was not found in the PATH.

  Tell CMake where to find the compiler by setting either the environment
  variable "CXX" or the CMake cache entry CMAKE_CXX_COMPILER to the full path
  to the compiler, or to the compiler name if it is in the PATH.


CMake Error at CMakeLists.txt:2 (project):
  The CMAKE_C_COMPILER:

    arm-linux-gnueabihf-gcc

  is not a full path and was not found in the PATH.

  Tell CMake where to find the compiler by setting either the environment
  variable "CC" or the CMake cache entry CMAKE_C_COMPILER to the full path to
  the compiler, or to the compiler name if it is in the PATH.

assets/tasks/common.json Outdated Show resolved Hide resolved
@microhobby
Copy link
Member

Fix #51

Signed-off-by: Andre Riesco <andre.riesco@toradex.com>
andreriesco and others added 7 commits October 18, 2023 16:55
Add the hardware acceleration support for the Qt template, by
using the newly release Torizon Qt6 containers (torizon/qt6-wayland and
torizon/qt6-wayland-vivante).
Also change the build tool from qmake6 to cmake, because at the moment
the "quick" module when added through qmake6 (in the .pro file),
adds the requirement of libGLX on the Makefile, which is not available
for the iMX8 modules.
Therefore, before it gets fixed, to use qmake6 you have remove the
/usr/lib/aarch64-linux-gnu/libGLX.so from the LIBS of the Makefile
generated by qmake6 before running "make". Because of that, the
recommended way is to use CMake, the default of this new
hardware accelerated Qt6 template.

Signed-off-by: Andre Riesco <andre.riesco@toradex.com>
Signed-off-by: Andre Riesco <andre.riesco@toradex.com>
As now we are using the cmake the qtcreator qtversion.xml
should have the right paths and ids

Signed-off-by: Matheus Castello <matheus.castello@toradex.com>
These are needed if the user wants to use the qtCreator debugger
instead the vs code one.

Signed-off-by: Matheus Castello <matheus.castello@toradex.com>
Now we are using cmake and cmake create the build-local folder instead
of x86_64, so we need to change the path to the gdbserver binary.
Also we need to add a dependency to update the qt.ini file before
starting the gdbserver for the local build.

Signed-off-by: Matheus Castello <matheus.castello@toradex.com>
Now we are creating the build-arm64 folder instead off aaarch64

Signed-off-by: Matheus Castello <matheus.castello@toradex.com>
These configurations will help us to better edit the tasks.json files

Signed-off-by: Matheus Castello <matheus@castello.eng.br>
@microhobby
Copy link
Member

LGTM!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request maintenance
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants