UBports Robot Logo UBports Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Search
    • Register
    • Login

    Introducing Miroil

    Scheduled Pinned Locked Moved Lomiri (was Unity8)
    31 Posts 5 Posters 9.9k Views 6 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
      Reply
      • Reply as topic
      Log in to reply
      This topic has been deleted. Only users with topic management privileges can see it.
      • joniusJ Offline
        jonius @alan_g
        last edited by

        @alan_g installed Ubuntu 16.04 on my notebook directly via Ubuntu Touch (ISODrive is a great tool). Unfortunately the situation here is worse than in my VM on an Ubuntu 20.04 host. I guess the outdated amdgpu for my Radeon Vega 8 Graphics in Ubuntu 16.04 is to blame. The demo runs like in the VM, the same unit test fails, but many smoke tests fail:

        I:     mir_demo_client_camera
        I:     mir_demo_client_tooltip
        I:     mir_demo_client_eglsquare
        I:     mir_demo_client_eglplasma
        I:     mir_demo_client_eglstateswitcher
        I:     mir_demo_client_target
        I:     mir_demo_client_scroll
        I:     mir_demo_client_cursors
        I:     mir_demo_client_egltriangle
        I:     mir_demo_client_egldiamond_render_surface
        I:     mir_demo_client_display_config
        I:     mir_demo_client_eglcounter
        I:     mir_demo_client_touch_validator
        I:     mir_demo_client_animated_cursor
        I:     mir_demo_client_pointer_confinement
        I:     mir_demo_client_input_shapes
        I:     mir_demo_client_eglflash
        

        So I guess best is to switch back to my VM? Is the failing tests something I could ignore for now?

        alan_gA 1 Reply Last reply Reply Quote 0
        • alan_gA Offline
          alan_g @jonius
          last edited by

          @jonius said in Introducing Miroil:

          Is the failing tests something I could ignore for now?

          Of course. It will get annoying, but if you know you didn't break the code...

          You've clearly got enough working to try stuff out.

          1 Reply Last reply Reply Quote 0
          • G Offline
            greyback @alan_g
            last edited by

            Hey folks,
            I can make this slightly easier with a few handy env vars.

            @alan_g said in Introducing Miroil:

            sudo ln -s /usr/local/lib/qt5/plugins/platforms/libqpa-mirserver.so /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/
            

            Allows Qt to find the platform.

            You can avoid this soft link by setting this env var instead:

            export QT_QPA_PLATFORM_PLUGIN_PATH=/usr/local/lib/qt5/plugins/platforms
            

            @alan_g said in Introducing Miroil:

            So Let's make that easier to find too:

            sudo ln -s /usr/local/lib/qt5/qml/Unity/ /usr/lib/x86_64-linux-gnu/qt5/qml/
            

            Similarly, you can avoid the soft link again and point Qt directly to where those QML plugins live with:

            export QML2_IMPORT_PATH=/usr/local/lib/qt5/qml
            

            Hope this helps
            -G

            1 Reply Last reply Reply Quote 2
            • Aury88A Offline
              Aury88
              last edited by Aury88

              during the QtMir build with make -j 6 all test I also had the fatal error described by @jonius :

              [ 87%] Building CXX object tests/mirserver/ScreensModel/CMakeFiles/ScreensModelTest.dir/screensmodel_test.cpp.o
              In file included from /home/aurelio/qtmir/src/modules/Unity/Application/mirsurface.h:35:0,
                               from /home/aurelio/qtmir/tests/modules/SurfaceManager/surface_manager_test.cpp:22:
              /home/aurelio/qtmir/src/modules/Unity/Application/mirbuffersgtexture.h:20:30: fatal error: miroil/mirbuffer.h: Not existing file or directory 
              compilation terminated.
              tests/modules/SurfaceManager/CMakeFiles/surfacemanager_test.dir/build.make:62:  instruction set  for the target "tests/modules/SurfaceManager/CMakeFiles/surfacemanager_test.dir/surface_manager_test.cpp.o" failed
              make[2]: *** [tests/modules/SurfaceManager/CMakeFiles/surfacemanager_test.dir/surface_manager_test.cpp.o] Error 1
              CMakeFiles/Makefile2:2146:  instruction set  for the target "tests/modules/SurfaceManager/CMakeFiles/surfacemanager_test.dir/all" failed
              make[1]: *** [tests/modules/SurfaceManager/CMakeFiles/surfacemanager_test.dir/all] Error 2
              make[1]: *** waiting incomplete process....
              

              and after that

              [ 95%] Built target applicationmanager_test
              Makefile:138: instruction set  for the target  "all" failed
              make: *** [all] Error 2
              
              alan_gA 2 Replies Last reply Reply Quote 0
              • alan_gA Offline
                alan_g @Aury88
                last edited by

                @jonius can you PR your fix? It looks to tidy up the cmake code too.

                1 Reply Last reply Reply Quote 0
                • alan_gA Offline
                  alan_g @Aury88
                  last edited by alan_g

                  @aury88 I'm not sure when I'll be at a computer where I can fix this. In the meantime you could google enough git magic to cherry-pick @jonius's fix.

                  UPDATE: I've pushed a fix for the build error. There's still the test failure noted above.

                  @Aury88 You can get the fix with git pull

                  joniusJ 1 Reply Last reply Reply Quote 0
                  • joniusJ Offline
                    jonius @alan_g
                    last edited by

                    @alan_g does that mean no need for a PR from my side?

                    Aury88A alan_gA 2 Replies Last reply Reply Quote 0
                    • Aury88A Offline
                      Aury88 @jonius
                      last edited by

                      @jonius i tried again after the git pull but obtain the same error

                      alan_gA 1 Reply Last reply Reply Quote 0
                      • alan_gA Offline
                        alan_g @Aury88
                        last edited by

                        @aury88 said in Introducing Miroil:

                        @jonius i tried again after the git pull but obtain the same error

                        Sorry, you'll need a git fetch first.

                        Aury88A 1 Reply Last reply Reply Quote 0
                        • alan_gA Offline
                          alan_g @jonius
                          last edited by

                          @jonius said in Introducing Miroil:

                          @alan_g does that mean no need for a PR from my side?

                          Well, I've fixed the compile error, but you modernized the code as well. I think that's still worth a PR.

                          1 Reply Last reply Reply Quote 0
                          • Aury88A Offline
                            Aury88 @alan_g
                            last edited by

                            @alan_g
                            Oh! so I totally misunderstood that command...reading the documentation seemed to me git pull already encompass a git fetch and a git merge. also I tried the git pull after the make command and that confirmed the local branch was up-to-date. ok, i will try again after the fetch. thank you.

                            1 Reply Last reply Reply Quote 0
                            • alan_gA Offline
                              alan_g @jonius
                              last edited by

                              @jonius said in Introducing Miroil:

                              @jonius next issue is a failing test (ApplicationManager), which fails here.

                              I had a look over the weekend. The test is failing in the branch I based this off, and I didn't see an obvious cause for it.

                              I probably need to find a better base branch for this work. I really find all these QtMir branches a mystery. Maybe the best one is one of those in the gitlab repo?

                              1 Reply Last reply Reply Quote 0
                              • First post
                                Last post