How can I run a Qt applicaton on ivi-shell?

zhangyang zhangyang-0206 at 163.com
Thu Dec 7 05:03:30 EST 2017


Hi Yang:
what's your ivi version? mine is 1.9.1. And from your weston.ini,  I do not find shell=ivi-shell.so, are you really using ivi-shell? Here is a weston.ini like:

[core]
shell=ivi-shell.so

[ivi-shell]
ivi-module=ivi-controller.so
ivi-input-module=ivi-input-controller.so

[output]
name=HDMI-A-1
transform=90

And make sure you have libwaylandegl.so, libilmCommon.so, libilmControl.so ......   in your board lib path(from your photo, I guess  you are running qt app in embedded board, not PC, right?).
ivi-extension is a extension for weston, and weston is only a backend, but I see a program is shown in your screen, are you sure this program is using ivi-shell as its backend?


At 2017-12-07 11:06:29, "Yang Zhonghua" <happy2discover at gmail.com> wrote:

Hi Zhao,


First of all, I would like to thank you for taking your time to answer my question.



1.
After launching weston(ivi-shell):
   

Then I tried following lines via serial port:


    export QT_WAYLAND_SHELL_INTEGRATION=ivi-shell

    ./hello-qt-quick2 -platform wayland


And I got:



    Using Wayland-EGL
    Failed to load shell integration ivi-shell




2.
My Qt version is 5.5.1. After applying patches for qtquickcontrols & qtwayland, and rebuilding Qt application. Executing following lines should lead to succeed?


    export QT_WAYLAND_SHELL_INTEGRATION=ivi-shell
    export QT_IVI_SURFACE_ID=4010
    ./hello-qt-quick2 -platform wayland




3.
I don't know how to ensure whether my Ubuntu supports genivi-ivi-extension. Could you tell me more specifically?


B.R.&Thanks,


Yang Zhonghua
happy2discover at gmail.com


On Wed, Dec 6, 2017 at 5:34 PM, zhangyang <zhangyang-0206 at 163.com> wrote:

Hi yang:
1. If you want your qt application run with ivi-shell, you should export QT_WAYLAND_SHELL_INTEGRATION=ivi-shell first.

2. I don't know your qt version, if it is >= 5.7,  you can set QT_IVI_SURFACE_ID to specify ivi-surface-id for your qt app. follows this:

https://codereview.qt-project.org/#/c/121297/
else if it is <5.7, you should apply genivi-ivi patch here:   https://github.com/GENIVI/genivi-dev-platform/tree/master/meta-genivi-dev/meta-qt5


3. Be sure your ubuntu already have genivi-ivi-extension support



good luck!





At 2017-12-06 09:30:09, "Yang Zhonghua" <happy2discover at gmail.com> wrote:
>Hi guys,
>
>I am new to wayland.
>
>[situation]
>The ivi-shell demo could run correctly on Ubuntu 17.10 so far.
>
>[goal]
>1. I made a hello-world Qt Quick2 application and tried to make it managed
>by ivi-shell.
>2. Two fullscreen applications could run on diffrent layers at the same
>time. The bottom one could show directly when the top one exits.
>
>[problem]
>I copied weston.ini in ivi-shell folder and added the following lines.
>
>[ivi-launcher]
>workspace-id=3
>icon-id=4010
>icon=/home/ubuntu/Downloads/weston/data/icon_ivi_hello-world-qt-quick2.png
>path=/home/ubuntu/Projects/hello-world-qt-quick2/hello-
world-qt-quick2
>
>
>But the hello-world Qt Quick2 application couldn't run on ivi-shell.
>AFAIK, the Qt application should make a request to generate surface-id.
>Anybody knows how to do it? Thanks so much!
>
>I've been stuck for almost one month...
>_______________________________________________
>genivi-ivi-layer-management mailing list
>genivi-ivi-layer-management at lists.genivi.org
>https://lists.genivi.org/mailman/listinfo/genivi-ivi-layer-management




 




More information about the genivi-ivi-layer-management mailing list